[Scummvm-cvs-logs] CVS: scummvm/scumm imuse.cpp,2.76,2.77 scummvm.cpp,2.321,2.322

Jamieson Christian jamieson630 at users.sourceforge.net
Sun Aug 10 04:45:02 CEST 2003


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv23772/scummvm/scumm

Modified Files:
	imuse.cpp scummvm.cpp 
Log Message:
Fix for Bug [785373] SAM: Overlapping music at Bigfoot convention

Included the ImDeferredCommand list when checking for
sounds that have been queued to play. Also added
sound queue processing between execution of exit script
and entry script. In the case of this bug, the entry
script required that the iMuse state be fully up to
date, including last-moment changes from the previous
exit script.

Index: imuse.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse.cpp,v
retrieving revision 2.76
retrieving revision 2.77
diff -u -d -r2.76 -r2.77
--- imuse.cpp	7 Aug 2003 14:33:38 -0000	2.76
+++ imuse.cpp	10 Aug 2003 11:44:43 -0000	2.77
@@ -454,6 +454,15 @@
 			return 2;
 		i = (i + 1) &(ARRAYSIZE(_cmd_queue) - 1);
 	}
+
+	for (i = 0; i < ARRAYSIZE (_deferredCommands); ++i) {
+		if (_deferredCommands[i].time_left && _deferredCommands[i].a == 8 &&
+		    _deferredCommands[i].b == sound)
+		{
+			return 2;
+		}
+	}
+
 	return 0;
 }
 

Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.321
retrieving revision 2.322
diff -u -d -r2.321 -r2.322
--- scummvm.cpp	10 Aug 2003 06:10:07 -0000	2.321
+++ scummvm.cpp	10 Aug 2003 11:44:43 -0000	2.322
@@ -1743,6 +1743,7 @@
 	killScriptsAndResources();
 	clearEnqueue();
 	stopCycle(0);
+	_sound->processSoundQues();
 
 	for (i = 1; i < _numActors; i++) {
 		_actors[i].hideActor();





More information about the Scummvm-git-logs mailing list