aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/selector.cpp
diff options
context:
space:
mode:
authorColin Snover2016-10-20 11:23:43 -0500
committerColin Snover2016-10-20 11:33:30 -0500
commitc9ad2062db80fc9b6339bebdcd70f58269e38bf6 (patch)
treecf0d86595be56281a722dddcb7aace563bde2953 /engines/sci/engine/selector.cpp
parentbd4b0dbbfdddf0426f451ae0a68cc7d4bdc45262 (diff)
downloadscummvm-rg350-c9ad2062db80fc9b6339bebdcd70f58269e38bf6.tar.gz
scummvm-rg350-c9ad2062db80fc9b6339bebdcd70f58269e38bf6.tar.bz2
scummvm-rg350-c9ad2062db80fc9b6339bebdcd70f58269e38bf6.zip
SCI32: Fix wrong value passed to updateInfoFlagViewVisible
updateInfoFlagViewVisible accepts a property index, not a selector ID. Fixes Trac#9583.
Diffstat (limited to 'engines/sci/engine/selector.cpp')
-rw-r--r--engines/sci/engine/selector.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/engines/sci/engine/selector.cpp b/engines/sci/engine/selector.cpp
index 3ae902215c..585b0ef2c2 100644
--- a/engines/sci/engine/selector.cpp
+++ b/engines/sci/engine/selector.cpp
@@ -233,12 +233,12 @@ void writeSelector(SegManager *segMan, reg_t object, Selector selectorId, reg_t
if (lookupSelector(segMan, object, selectorId, &address, NULL) != kSelectorVariable) {
const SciCallOrigin origin = g_sci->getEngineState()->getCurrentCallOrigin();
error("Selector '%s' of object could not be written to. Address %04x:%04x, %s", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object), origin.toString().c_str());
- } else {
- *address.getPointer(segMan) = value;
+ }
+
+ *address.getPointer(segMan) = value;
#ifdef ENABLE_SCI32
- updateInfoFlagViewVisible(segMan->getObject(object), selectorId);
+ updateInfoFlagViewVisible(segMan->getObject(object), address.varindex);
#endif
- }
}
void invokeSelector(EngineState *s, reg_t object, int selectorId,