[Scummvm-cvs-logs] CVS: scummvm/scumm script.cpp,1.137,1.138 scummvm.cpp,2.509,2.510
Max Horn
fingolfin at users.sourceforge.net
Mon Dec 15 12:34:04 CET 2003
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv18727
Modified Files:
script.cpp scummvm.cpp
Log Message:
Fix for bug #751670, thanks to MadMoose (I am not quite happy with the situation, but hey, at least this helps :-)
Index: script.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script.cpp,v
retrieving revision 1.137
retrieving revision 1.138
diff -u -d -r1.137 -r1.138
--- script.cpp 11 Dec 2003 06:08:43 -0000 1.137
+++ script.cpp 15 Dec 2003 20:33:40 -0000 1.138
@@ -1130,6 +1130,16 @@
VAR(VAR_OVERRIDE) = 1;
vm.cutScenePtr[vm.cutSceneStackPointer] = 0;
+
+ // HACK to fix issues with SMUSH and the way it does keyboard handling.
+ // In particular, normally abortCutscene() is being called while no
+ // scripts are active. But SMUSH runs from *inside* the script engine.
+ // And it calls abortCutscene() if ESC is pressed... not good.
+ // Proper fix might be to let SMUSH/INSANE run from outside the script
+ // engine but that would require lots of changes and may actually have
+ // negative effects, too. So we cheat here, to fix bug #751670.
+ getScriptEntryPoint();
+
}
}
Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.509
retrieving revision 2.510
diff -u -d -r2.509 -r2.510
--- scummvm.cpp 15 Dec 2003 16:11:43 -0000 2.509
+++ scummvm.cpp 15 Dec 2003 20:33:40 -0000 2.510
@@ -1824,6 +1824,8 @@
if (_lastKeyHit == KEY_ALL_SKIP) {
// Skip cutscene
if (_insaneState) {
+ // Eek this is literally shouting for trouble...
+ // Probably should set _lastKey to VAR_CUTSCENEEXIT_KEY instead!
_videoFinished = true;
return;
}
@@ -1873,7 +1875,8 @@
#else
_videoFinished = true;
#endif
- } else
+ }
+ if (!_insaneState || _videoFinished)
abortCutscene();
if (_version <= 2) {
// Ensure that the input script also sees the key press.
More information about the Scummvm-git-logs
mailing list