[Scummvm-tracker] [ScummVM] #10116: MM C64 DEMO: Attempting to display the original save/load screen causes a crash.
Colin Snover
trac at scummvm.org
Mon Nov 27 20:44:43 CET 2017
#10116: MM C64 DEMO: Attempting to display the original save/load screen causes a
crash.
-----------------------------+----------------------------------
Reporter: robertmegone | Owner: sev-
Type: defect | Status: closed
Priority: blocker | Component: Engine: SCUMM
Resolution: fixed | Keywords: semi-reproducible-ub
Game: Maniac Mansion |
-----------------------------+----------------------------------
Changes (by csnover):
* status: new => closed
* resolution: => fixed
Comment:
We had a discussion, here is the outcome.
sev- went back a few years in history and was still not able to reproduce
the OP’s assertion failure, and feels 95% certain that the OP’s issue was
due to invalid data. Since the MM C64 demo has no save screen anyway, he
felt it was appropriate to make a change to return early from the hotkey
handler.
Since the OP’s issue was not reproduced I still think that the patch
committed has equal probability of (1) doing nothing (since the game
already doesn’t show a save screen or crash normally), (2) masking a
different bug with out-of-bounds reads that exists elsewhere in SCUMM
engine, which can be conditionally triggered from the MM C64 demo, or (3)
fixing the OP’s problem with the MM C64 demo as reported. Due to concerns
over (1) and (2) I would prefer having made no code change in this regard
and simply say that this ticket is worksforme/outdated, so that there is
the opportunity for a new reproduction in future, but that is my opinion.
Since the UB was causing a reproducible crash with Clang 5’s UBSan that
was the angle I approached this ticket with, but it is not the OP’s crash
so shouldn’t remain here. I will open a separate ticket to track the
problem of the UB-hack save code which crashes Clang 5’s UBSan at runtime,
and that problem is not a release blocker for 2.0.
--
Ticket URL: <https://bugs.scummvm.org/ticket/10116#comment:18>
ScummVM <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list