[Scummvm-cvs-logs] SF.net SVN: scummvm:[54395] scummvm/trunk/engines/sci/engine/kgraphics.cpp

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Sat Nov 20 20:52:31 CET 2010


Revision: 54395
          http://scummvm.svn.sourceforge.net/scummvm/?rev=54395&view=rev
Author:   thebluegr
Date:     2010-11-20 19:52:31 +0000 (Sat, 20 Nov 2010)

Log Message:
-----------
SCI: Fix ScummVM freezing during the credits scene in EcoQuest 1 (bug #3101846)

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/kgraphics.cpp

Modified: scummvm/trunk/engines/sci/engine/kgraphics.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kgraphics.cpp	2010-11-20 10:10:18 UTC (rev 54394)
+++ scummvm/trunk/engines/sci/engine/kgraphics.cpp	2010-11-20 19:52:31 UTC (rev 54395)
@@ -33,6 +33,7 @@
 
 #include "sci/sci.h"
 #include "sci/debug.h"	// for g_debug_sleeptime_factor
+#include "sci/event.h"
 #include "sci/resource.h"
 #include "sci/engine/features.h"
 #include "sci/engine/state.h"
@@ -1118,6 +1119,14 @@
 
 	g_sci->_gfxAnimate->kernelAnimate(castListReference, cycle, argc, argv);
 
+	// WORKAROUND: At the end of Ecoquest 1, during the credits, the game
+	// doesn't call kGetEvent(), so no events are processed (e.g. window
+	// focusing, window moving etc). We poll events for that scene, to
+	// keep ScummVM responsive. Fixes ScummVM "freezing" during the credits,
+	// bug #3101846
+	if (g_sci->getGameId() == GID_ECOQUEST && s->currentRoomNumber() == 680)
+		g_sci->getEventManager()->getSciEvent(SCI_EVENT_PEEK);
+
 	return s->r_acc;
 }
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list