diff options
Diffstat (limited to 'engines/gob/game.cpp')
-rw-r--r-- | engines/gob/game.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/gob/game.cpp b/engines/gob/game.cpp index e239248807..205258d628 100644 --- a/engines/gob/game.cpp +++ b/engines/gob/game.cpp @@ -351,6 +351,13 @@ void Game::freeSoundSlot(int16 slot) { if ((slot < 0) || (slot >= 60) || (_soundSamples[slot] == 0)) return; + if (slot == _vm->_snd->getCompositionSlot()) { + if (_vm->_quitRequested) + _vm->_snd->stopComposition(); + else + _vm->_snd->waitEndPlay(); + } + if (_soundADL[slot]) { if (_vm->_adlib && (_vm->_adlib->getIndex() == slot)) _vm->_adlib->stopPlay(); |