aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/sci/engine/state.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/engines/sci/engine/state.cpp b/engines/sci/engine/state.cpp
index 9db49bcb56..9a63b4e228 100644
--- a/engines/sci/engine/state.cpp
+++ b/engines/sci/engine/state.cpp
@@ -465,8 +465,10 @@ bool EngineState::autoDetectFeature(FeatureDetection featureDetection, int metho
} while (offset > 0);
// Some games, like KQ5CD, never actually call SetCursor inside Game::setCursor
- // but call isObject
- if (featureDetection == kDetectSetCursorType && foundTarget) {
+ // but call isObject. Cover this case here, if we're actually reading the selector
+ // itself, and not iterating through the Game object (i.e. when the selector
+ // dictionary is missing)
+ if (featureDetection == kDetectSetCursorType && methodNum == -1 && foundTarget) {
_setCursorType = SCI_VERSION_1_1;
return true;
}