diff options
-rw-r--r-- | scumm/imuse_digi/dimuse_script.cpp | 3 | ||||
-rw-r--r-- | scumm/imuse_digi/dimuse_track.cpp | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/scumm/imuse_digi/dimuse_script.cpp b/scumm/imuse_digi/dimuse_script.cpp index a66024ad4c..cc55827f99 100644 --- a/scumm/imuse_digi/dimuse_script.cpp +++ b/scumm/imuse_digi/dimuse_script.cpp @@ -381,6 +381,9 @@ void IMuseDigital::stopAllSounds() { break; flushTracks(); _vm->_system->delay_msecs(50); +#ifdef _WIN32_WCE + _vm->parseEvents(); // timers are events, we need to consume them +#endif } } diff --git a/scumm/imuse_digi/dimuse_track.cpp b/scumm/imuse_digi/dimuse_track.cpp index 0b24a894a3..d160a5efd4 100644 --- a/scumm/imuse_digi/dimuse_track.cpp +++ b/scumm/imuse_digi/dimuse_track.cpp @@ -82,6 +82,9 @@ void IMuseDigital::startSound(int soundId, const char *soundName, int soundType, Track *track = _track[l]; for (;;) { +#ifdef _WIN32_WCE + _vm->parseEvents(); // timers are events, we need to consume them +#endif flushTracks(); if (!track->used) { track->pan = 64; |