aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kiewitz2010-06-26 11:16:25 +0000
committerMartin Kiewitz2010-06-26 11:16:25 +0000
commit18d9f917a0be68327ed3b06da588a5804f42e54f (patch)
tree8f2d50a5f02e94cffb5dcfd28522404ca23179ab
parentd7fe98825154ede7beb0987ee3177ed46f1a3fa4 (diff)
downloadscummvm-rg350-18d9f917a0be68327ed3b06da588a5804f42e54f.tar.gz
scummvm-rg350-18d9f917a0be68327ed3b06da588a5804f42e54f.tar.bz2
scummvm-rg350-18d9f917a0be68327ed3b06da588a5804f42e54f.zip
SCI: set _driver to 0 in MidiParser_SCI destructor to stop the MidiParser destructor call allNotesOff() which would affect all channels all the time - fixes sq1 ship flying away sound getting stopped when ladder falls down
svn-id: r50313
-rw-r--r--engines/sci/sound/midiparser_sci.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp
index 0bcafc8075..ebb2a172cc 100644
--- a/engines/sci/sound/midiparser_sci.cpp
+++ b/engines/sci/sound/midiparser_sci.cpp
@@ -65,6 +65,9 @@ MidiParser_SCI::MidiParser_SCI(SciVersion soundVersion, SciMusic *music) :
MidiParser_SCI::~MidiParser_SCI() {
unloadMusic();
+ // we do this, so that MidiParser won't be able to call his own ::allNotesOff()
+ // this one would affect all channels and we can't let that happen
+ _driver = 0;
}
void MidiParser_SCI::mainThreadBegin() {