diff options
author | James Brown | 2002-06-26 10:20:56 +0000 |
---|---|---|
committer | James Brown | 2002-06-26 10:20:56 +0000 |
commit | 9ac3f92be1abeed35ca7e76bc072a8517d88b399 (patch) | |
tree | 11eb8b0ef6aa1f6d9aca1a4204bad76e9a764b9e /sound/mixer.cpp | |
parent | 025925bbd434868a6f686b51005647cfe3d8a776 (diff) | |
download | scummvm-rg350-9ac3f92be1abeed35ca7e76bc072a8517d88b399.tar.gz scummvm-rg350-9ac3f92be1abeed35ca7e76bc072a8517d88b399.tar.bz2 scummvm-rg350-9ac3f92be1abeed35ca7e76bc072a8517d88b399.zip |
Hacks to make SMUSH mixer a bit more tollerable.
svn-id: r4429
Diffstat (limited to 'sound/mixer.cpp')
-rw-r--r-- | sound/mixer.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/sound/mixer.cpp b/sound/mixer.cpp index 0fbaf627e6..115ca37fb8 100644 --- a/sound/mixer.cpp +++ b/sound/mixer.cpp @@ -459,13 +459,17 @@ void SoundMixer::Channel_STREAM::mix(int16 *data, uint len) { mixer_helper_table[_flags & 0x07](data, &len, &_pos, &fp_pos, fp_speed, vol_tab, _ptr + _buffer_size); if (len != 0) { _pos = _ptr; - mixer_helper_table[_flags & 0x07](data, &len, &_pos, &fp_pos, fp_speed, vol_tab, end_of_data); - } - } - if (len != 0) { - warning("Streaming underflow "); - real_destroy(); - return; + mixer_helper_table[_flags & 0x07](data, &len, &_pos, &fp_pos, fp_speed, vol_tab, end_of_data); + } else + _to_be_destroyed = true; + } + if (len != 0) { + // FIXME: BBrox, what does this mean? :) + // Commented by Ender to remove non-existant + // streamer bug in Dig smush movies. + //warning("Streaming underflow of %d bytes", len); + //real_destroy(); + //return; } _fp_pos = fp_pos; } |