aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2010-01-28 08:23:40 +0000
committerFilippos Karapetis2010-01-28 08:23:40 +0000
commit6fd8f7c0155f54af4a85c6a0e9d7b5bdf0fd71af (patch)
tree2d3e03944065a3bb88a6b67c5c5554f4179ddc1f
parent1e6123ce89e306249f2c80d7afc13418dea70c37 (diff)
downloadscummvm-rg350-6fd8f7c0155f54af4a85c6a0e9d7b5bdf0fd71af.tar.gz
scummvm-rg350-6fd8f7c0155f54af4a85c6a0e9d7b5bdf0fd71af.tar.bz2
scummvm-rg350-6fd8f7c0155f54af4a85c6a0e9d7b5bdf0fd71af.zip
Always try and load the associated digital track if the requested MIDI track couldn't be found
svn-id: r47631
-rw-r--r--engines/sci/sound/music.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/engines/sci/sound/music.cpp b/engines/sci/sound/music.cpp
index 85088a882b..912b4da5e3 100644
--- a/engines/sci/sound/music.cpp
+++ b/engines/sci/sound/music.cpp
@@ -172,7 +172,9 @@ void SciMusic::soundInitSnd(MusicEntry *pSnd) {
// If MIDI device is selected but there is no digital track in sound resource
// try to use adlib's digital sample if possible
- if (_bMultiMidi && (!track || track->digitalChannelNr == -1)) {
+ // Also, if the track couldn't be found, load the digital track, as some games
+ // depend on this (e.g. the Longbow demo)
+ if (!track || (_bMultiMidi && track->digitalChannelNr == -1)) {
SoundResource::Track *digital = pSnd->soundRes->getDigitalTrack();
if (digital)
track = digital;