diff options
author | Paul Gilbert | 2016-10-27 23:22:59 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-10-27 23:22:59 -0400 |
commit | 831694699cc2c0ae00332162055fdff35940a99b (patch) | |
tree | 81e9b506c125b7e7b38b3e9e93d2d2f77ddee10c /engines/titanic/sound | |
parent | e12496bd0c2a15d4e7701422ca9fd860482dcb1f (diff) | |
download | scummvm-rg350-831694699cc2c0ae00332162055fdff35940a99b.tar.gz scummvm-rg350-831694699cc2c0ae00332162055fdff35940a99b.tar.bz2 scummvm-rg350-831694699cc2c0ae00332162055fdff35940a99b.zip |
TITANIC: Fix interrupting playing sounds
Diffstat (limited to 'engines/titanic/sound')
-rw-r--r-- | engines/titanic/sound/qmixer.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/titanic/sound/qmixer.cpp b/engines/titanic/sound/qmixer.cpp index 733164947e..f05f8c3ab9 100644 --- a/engines/titanic/sound/qmixer.cpp +++ b/engines/titanic/sound/qmixer.cpp @@ -60,7 +60,12 @@ void QMixer::qsWaveMixFreeWave(Audio::SoundHandle &handle) { } void QMixer::qsWaveMixFlushChannel(int iChannel, uint flags) { - // Not currently implemented in ScummVM + Common::List<SoundEntry>::iterator i; + Common::List<SoundEntry> &sounds = _channels[iChannel]._sounds; + for (i = sounds.begin(); i != sounds.end(); ++i) + _mixer->stopHandle((*i)._soundHandle); + + sounds.clear(); } void QMixer::qsWaveMixSetPanRate(int iChannel, uint flags, uint rate) { |