[Scummvm-cvs-logs] scummvm master -> d7112b5bbc17e80065534d5308f24ea0fefeedaf
wjp
wjp at usecode.org
Sun Feb 27 15:53:38 CET 2011
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
d7112b5bbc SCI: Remove kDoBresen special case for SCI_VERSION_1_EGA_ONLY
Commit: d7112b5bbc17e80065534d5308f24ea0fefeedaf
https://github.com/scummvm/scummvm/commit/d7112b5bbc17e80065534d5308f24ea0fefeedaf
Author: Willem Jan Palenstijn (wjp at usecode.org)
Date: 2011-02-27T06:52:19-08:00
Commit Message:
SCI: Remove kDoBresen special case for SCI_VERSION_1_EGA_ONLY
Confirmed with QfG2 disassembly (the only 1_EGA_ONLY game)
that it behaves the same as SCI_VERSION_1_EARLY games, except
for the uninitialized read already mentioned in kDoBresen.
Changed paths:
engines/sci/engine/kmovement.cpp
diff --git a/engines/sci/engine/kmovement.cpp b/engines/sci/engine/kmovement.cpp
index bc22397..392db56 100644
--- a/engines/sci/engine/kmovement.cpp
+++ b/engines/sci/engine/kmovement.cpp
@@ -374,17 +374,10 @@ reg_t kDoBresen(EngineState *s, int argc, reg_t *argv) {
writeSelectorValue(segMan, mover, SELECTOR(b_i2), mover_i2);
writeSelectorValue(segMan, mover, SELECTOR(b_di), mover_di);
- if (getSciVersion() == SCI_VERSION_1_EGA_ONLY) {
- // We need to compare directly in here, complete may have happened during
- // the current move
- if ((client_x == mover_x) && (client_y == mover_y))
- invokeSelector(s, mover, SELECTOR(moveDone), argc, argv);
- }
-
- if (getSciVersion() >= SCI_VERSION_1_EARLY) {
- // This calling code here was right before the last return in
- // sci1ega and got changed to this position since sci1early
- // this was an uninitialized issue in sierra sci
+ if (getSciVersion() >= SCI_VERSION_1_EGA_ONLY) {
+ // In sci1egaonly this block of code was outside of the main if,
+ // but client_x/client_y aren't set there, so it was an
+ // uninitialized read in SSCI. (This issue was fixed in sci1early.)
if (handleMoveCount)
writeSelectorValue(segMan, mover, SELECTOR(b_movCnt), mover_moveCnt);
// We need to compare directly in here, complete may have happened during
More information about the Scummvm-git-logs
mailing list