diff options
author | James Brown | 2002-04-24 04:26:09 +0000 |
---|---|---|
committer | James Brown | 2002-04-24 04:26:09 +0000 |
commit | 280136f13aeeb5c30961253ca0a6e327ba91700a (patch) | |
tree | 9112ccafbbd84d440d807b2b0c3bef958d5a649a /script.cpp | |
parent | 20e9ad5e2339a777c6fde7c8897bf5c256e2883b (diff) | |
download | scummvm-rg350-280136f13aeeb5c30961253ca0a6e327ba91700a.tar.gz scummvm-rg350-280136f13aeeb5c30961253ca0a6e327ba91700a.tar.bz2 scummvm-rg350-280136f13aeeb5c30961253ca0a6e327ba91700a.zip |
Fix Indy4/MI2 crash due to VirtScroll code.
Cleanup \N's - For gods sake fix your CVS client :)
svn-id: r4067
Diffstat (limited to 'script.cpp')
-rw-r--r-- | script.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/script.cpp b/script.cpp index 069d8ccb40..f9dcefce26 100644 --- a/script.cpp +++ b/script.cpp @@ -32,6 +32,7 @@ void Scumm::runScript(int script, int a, int b, int16 * lvarptr) int slot; ScriptSlot *s; + if (script == 0) return; @@ -267,6 +268,7 @@ void Scumm::getScriptEntryPoint() /* Execute a script - Read opcode, and execute it from the table */ void Scumm::executeScript() { + OpcodeProc op; while (_currentScript != 0xFF) { _opcode = fetchScriptByte(); @@ -966,10 +968,7 @@ void Scumm::beginOverride() idx = vm.cutSceneStackPointer; ptr = &vm.cutScenePtr[idx]; -/* if (!*ptr) { // ENDER - FIXME - We don't need this? - vm.slot[_currentScript].cutsceneOverride++; - } -*/ + *ptr = _scriptPointer - _scriptOrgPointer; vm.cutSceneScript[idx] = _currentScript; @@ -985,10 +984,7 @@ void Scumm::endOverride() idx = vm.cutSceneStackPointer; ptr = &vm.cutScenePtr[idx]; -/* if (!*ptr) { // ENDER - FIXME - We don't need this? - // vm.slot[_currentScript].cutsceneOverride--; - //printf("ending override: %d on script %d\n", vm.slot[_currentScript].cutsceneOverride, _currentScript); - } */ + *ptr = 0; vm.cutSceneScript[idx] = 0; _vars[VAR_OVERRIDE] = 0; |