diff options
author | Max Horn | 2004-01-22 19:43:36 +0000 |
---|---|---|
committer | Max Horn | 2004-01-22 19:43:36 +0000 |
commit | 747cbef8d7fa5dffab1a21d56726bf207211b80e (patch) | |
tree | 143f973a5aee2e7647ad1ea04510057205c1ed77 /scumm/imuse_digi | |
parent | ed6aed43bf03b9aefcc9d4fb8a81f1455a0c1003 (diff) | |
download | scummvm-rg350-747cbef8d7fa5dffab1a21d56726bf207211b80e.tar.gz scummvm-rg350-747cbef8d7fa5dffab1a21d56726bf207211b80e.tar.bz2 scummvm-rg350-747cbef8d7fa5dffab1a21d56726bf207211b80e.zip |
Fix for bug #882081
svn-id: r12574
Diffstat (limited to 'scumm/imuse_digi')
-rw-r--r-- | scumm/imuse_digi/dimuse.cpp | 2 | ||||
-rw-r--r-- | scumm/imuse_digi/dimuse_sndmgr.h | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/scumm/imuse_digi/dimuse.cpp b/scumm/imuse_digi/dimuse.cpp index fba27316c6..bcda26a452 100644 --- a/scumm/imuse_digi/dimuse.cpp +++ b/scumm/imuse_digi/dimuse.cpp @@ -286,7 +286,9 @@ void IMuseDigital::startSound(int soundId, const char *soundName, int soundType, channels = _sound->getChannels(_track[l].soundHandle); freq = _sound->getFreq(_track[l].soundHandle); + assert(bits == 8 || bits == 12 || bits == 16); assert(channels == 1 || channels == 2); + assert(0 < freq && freq <= 65535); _track[l].iteration = _track[l].pullSize = freq * channels; diff --git a/scumm/imuse_digi/dimuse_sndmgr.h b/scumm/imuse_digi/dimuse_sndmgr.h index a593955be5..61cc4370c5 100644 --- a/scumm/imuse_digi/dimuse_sndmgr.h +++ b/scumm/imuse_digi/dimuse_sndmgr.h @@ -66,7 +66,7 @@ private: public: struct soundStruct { - int16 freq; // frequency + uint16 freq; // frequency byte channels; // stereo or mono byte bits; // 8, 12, 16 int8 numJumps; // number of Jumps |