[Scummvm-git-logs] scummvm master -> e2b63d439fe03c164ba1e2e889b8fd75e9f74b37
mduggan
noreply at scummvm.org
Thu Oct 30 06:53:25 UTC 2025
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
e2b63d439f ACCESS: Avoid crash on certain MM deaths (fixes #16308)
Commit: e2b63d439fe03c164ba1e2e889b8fd75e9f74b37
https://github.com/scummvm/scummvm/commit/e2b63d439fe03c164ba1e2e889b8fd75e9f74b37
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2025-10-30T15:52:07+09:00
Commit Message:
ACCESS: Avoid crash on certain MM deaths (fixes #16308)
Changed paths:
engines/access/scripts.cpp
diff --git a/engines/access/scripts.cpp b/engines/access/scripts.cpp
index 0af344868c8..361ddcc39e6 100644
--- a/engines/access/scripts.cpp
+++ b/engines/access/scripts.cpp
@@ -173,7 +173,11 @@ void Scripts::charLoop() {
_vm->plotList1();
_vm->copyBlocks();
- _data->seek(pos);
+ // Have to check for null data here in case of death
+ // (which original handles by goto-ing out of the loop)
+ if (_data)
+ _data->seek(pos);
+
_endFlag = endFlag;
}
@@ -1233,6 +1237,14 @@ void Scripts::cmdDead() {
int deathId = _data->readByte();
debugC(1, kDebugScripts, "cmdDead(deathId=%d)", deathId);
_vm->dead(deathId);
+
+ //
+ // The original uses GOTO inside the death function so never gets here,
+ // but we avoid the goto and return instead.
+ //
+ // The room script has been freed so set end flag to gracefully exit.
+ //
+ _endFlag = true;
}
void Scripts::cmdFadeOut() {
More information about the Scummvm-git-logs
mailing list