aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/vm.cpp
diff options
context:
space:
mode:
authorMartin Kiewitz2010-07-12 09:24:18 +0000
committerMartin Kiewitz2010-07-12 09:24:18 +0000
commitc1e954bdad96b7ae8e518e92aec365c7c26377bb (patch)
treec82751e645556d4af6b6a0c2b91fca6304113662 /engines/sci/engine/vm.cpp
parent101498e7701aec9240599122fd161c9b407f28f7 (diff)
downloadscummvm-rg350-c1e954bdad96b7ae8e518e92aec365c7c26377bb.tar.gz
scummvm-rg350-c1e954bdad96b7ae8e518e92aec365c7c26377bb.tar.bz2
scummvm-rg350-c1e954bdad96b7ae8e518e92aec365c7c26377bb.zip
SCI: add workaround for lsl6 restore issue (needs to get further investigated), hunk segment is used but hunk segment isn't existant at that point when restoring the game
svn-id: r50814
Diffstat (limited to 'engines/sci/engine/vm.cpp')
-rw-r--r--engines/sci/engine/vm.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/sci/engine/vm.cpp b/engines/sci/engine/vm.cpp
index 1ed3acbace..32da080e43 100644
--- a/engines/sci/engine/vm.cpp
+++ b/engines/sci/engine/vm.cpp
@@ -839,6 +839,8 @@ static void callKernelFunc(EngineState *s, int kernelCallNr, int argc) {
// Sub-functions available, check signature and call that one directly
if (argc < 1)
error("[VM] k%s[%x]: no subfunction-id parameter given", kernelCall.name, kernelCallNr);
+ if (argv[0].segment)
+ error("[VM] k%s[%x]: given subfunction-id is actually a pointer", kernelCall.name, kernelCallNr);
const uint16 subId = argv[0].toUint16();
// Skip over subfunction-id
argc--;