From 74041e21203bd0847d512d00f1bf01cee07b88dc Mon Sep 17 00:00:00 2001 From: Nicolas Bacca Date: Sat, 20 Jul 2002 07:57:22 +0000 Subject: Fixed Monkey Island 2 freeze when sound is paused svn-id: r4608 --- sound/mixer.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'sound/mixer.cpp') diff --git a/sound/mixer.cpp b/sound/mixer.cpp index e5677bbde0..73b793814c 100644 --- a/sound/mixer.cpp +++ b/sound/mixer.cpp @@ -110,11 +110,6 @@ int SoundMixer::play_mp3_cdtrack(PlayingSoundHandle *handle, FILE * file, mad_ti void SoundMixer::mix(int16 *buf, uint len) { - if (_paused) { - memset(buf, 0, 2 * len * sizeof(int16)); - return; - } - if (_premix_proc) { int i; _premix_proc(_premix_param, buf, len); @@ -126,6 +121,12 @@ void SoundMixer::mix(int16 *buf, uint len) memset(buf, 0, 2 * len * sizeof(int16)); } + /* Arisme : moved to let iMUSE generate the events */ + if (_paused) { + memset(buf, 0, 2 * len * sizeof(int16)); + return; + } + _syst->lock_mutex(_mutex); /* now mix all channels */ for (int i = 0; i != NUM_CHANNELS; i++) -- cgit v1.2.3