[Scummvm-cvs-logs] CVS: scummvm/scumm imuse.cpp,2.136,2.137

Torbjörn Andersson eriktorbjorn at users.sourceforge.net
Thu May 26 05:57:48 CEST 2005


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9618

Modified Files:
	imuse.cpp 
Log Message:
Be less agressive about re-using trigger slots. This fixes bug #888161,
hopefully without causing any regressions.


Index: imuse.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse.cpp,v
retrieving revision 2.136
retrieving revision 2.137
diff -u -d -r2.136 -r2.137
--- imuse.cpp	26 May 2005 11:30:56 -0000	2.136
+++ imuse.cpp	26 May 2005 12:56:29 -0000	2.137
@@ -897,7 +897,10 @@
 	for (i = ARRAYSIZE(_snm_triggers); i; --i, ++trig) {
 		if (!trig->id)
 			break;
-		if (trig->id == id && trig->sound == sound)
+		// We used to only compare 'id' and 'sound' here, but at least
+		// at the Dino Bungie Memorial that causes the music to stop
+		// after getting the T-Rex tooth. See bug #888161.
+		if (trig->id == id && trig->sound == sound && trig->command[0] == a)
 			break;
 
 		uint16 diff;
@@ -1215,7 +1218,7 @@
 	midi->sysEx(buffer, 6);
 	debug(2, "GM SysEx: GM System On");
 	g_system->delayMillis(200);
-     		
+
 	if (_enable_gs) {
 		
 		// All GS devices recognize the GS Reset command,
@@ -1279,7 +1282,7 @@
 			midi->send((  0    << 16) | (38  << 8) | (0xB0 | i));
 			midi->send((  127  << 16) | (100 << 8) | (0xB0 | i));
 			midi->send((  127  << 16) | (101 << 8) | (0xB0 | i));
-            } 
+		} 
 		debug(2, "GM Controller 6 Change: Channels 1-16 Pitch Bend Sensitivity is 12 semitones");
 
 		// Set channels 1-16 Mod. LFO1 Pitch Depth to 4





More information about the Scummvm-git-logs mailing list