https://gitlab.synchro.net/main/sbbs/-/commit/30be01007ab77314e82d0467
Modified Files:
src/doors/syncscumm/build.sh
Log Message:
syncscumm: build ScummVM in release mode (fix fatal SCI crashes)
build.sh configured ScummVM as a developer build, so an SCI
"uninitialized temp read" with no engine workaround was a fatal
error() (engines/sci/engine/vm.cpp) rather than a warning -- crashing
the door the instant a fan game's script hit one. Cascade Quest's
Sound->Volume menu does exactly this (TheMenuBar::handleEvent, script
997), for which ScummVM ships a workaround only for Betrayed Alliance.
Add --enable-release-mode to configure, which defines RELEASE_BUILD:
the uninitialized read becomes a warning + fake-0 and the game
continues -- the tolerant behavior a shipped ScummVM release has, and
what real ScummVM users get. It also drops dev-only asserts/debug
(hashmap stats, celobj32 bounds checks), all benign. Not
--enable-release, which additionally forces optimizations and turns on
the update-checker (a door must not phone home).
The Win32/MSVC build (create_project) already defines RELEASE_BUILD for
its Release configuration, so this only brings the Linux build in line.
Co-Authored-By: Claude Opus 4.8 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net