aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorMartin Kiewitz2015-04-18 23:13:11 +0200
committerMartin Kiewitz2015-04-18 23:13:11 +0200
commit83c6e1543e556ac6f5f91a38508575747b70fcad (patch)
tree57a00993d60064a95ee4d1651257778bab5b4b3a /engines/sci/engine
parent4efaab40150386004d33d3c3c15e263027168865 (diff)
downloadscummvm-rg350-83c6e1543e556ac6f5f91a38508575747b70fcad.tar.gz
scummvm-rg350-83c6e1543e556ac6f5f91a38508575747b70fcad.tar.bz2
scummvm-rg350-83c6e1543e556ac6f5f91a38508575747b70fcad.zip
SCI: add debug level for workarounds
It's called "Workarounds"
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/workarounds.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/sci/engine/workarounds.cpp b/engines/sci/engine/workarounds.cpp
index cc77fba8ec..4999664d7a 100644
--- a/engines/sci/engine/workarounds.cpp
+++ b/engines/sci/engine/workarounds.cpp
@@ -555,6 +555,7 @@ SciWorkaroundSolution trackOriginAndFindWorkaround(int index, const SciWorkaroun
reg_t searchObject = lastCall->sendp;
const byte *curScriptPtr = NULL;
uint32 curScriptSize = 0;
+ bool matched = false;
do {
workaround = workaroundList;
@@ -595,7 +596,7 @@ SciWorkaroundSolution trackOriginAndFindWorkaround(int index, const SciWorkaroun
// now actually check for signature match
if (g_sci->getScriptPatcher()->verifySignature(curLocalCallOffset, workaround->localCallSignature, "workaround signature", curScriptPtr, curScriptSize)) {
- return workaround->newValue;
+ matched = true;
}
} else {
@@ -605,6 +606,10 @@ SciWorkaroundSolution trackOriginAndFindWorkaround(int index, const SciWorkaroun
}
} else {
// no localcalls involved -> workaround matches
+ matched = true;
+ }
+ if (matched) {
+ debugC(kDebugLevelWorkarounds, "Workaround: '%s:%s' in script %d", workaround->objectName, workaround->methodName, curScriptNr);
return workaround->newValue;
}
}