[Scummvm-tracker] [ScummVM :: Bugs] #14753: SCUMM: OSX crash with misread local Macintosh resource forks

ScummVM :: Bugs trac at scummvm.org
Mon Dec 18 22:48:48 UTC 2023


#14753: SCUMM: OSX crash with misread local Macintosh resource forks
---------------------+----------------------------
Reporter:  dwatteau  |       Owner:  (none)
    Type:  defect    |      Status:  new
Priority:  normal    |   Component:  Engine: SCUMM
 Version:            |  Resolution:
Keywords:            |        Game:
---------------------+----------------------------
Comment (by dwatteau):

 Thanks.

 As for handling that case in the SCUMM engine, I see that Monkey2 already
 successfully triggers this code in
 `engines/scumm/imuse/drivers/mac_m68k.cpp:196`:

 {{{
 void IMuseDriver_MacM68k::loadAllInstruments() {
         Common::MacResManager resource;
         if (resource.open("iMUSE Setups")) {
                 if (!resource.hasResFork()) {
                         error("MacM68kDriver::loadAllInstruments: \"iMUSE
 Setups\" loaded, but no resource fork present");
                 }

         // ...
 }}}

 Then, I did some bisects with Monkey2 Macintosh (running on an HFS+ or
 APFS volume with the native resource fork), because this game was already
 loading resource forks before 2.8.0, so it was easier to find a regression
 outside of the engine.

 Git bisect gives me commit `9892bedc61d8fee94587f80a589960ef6876ce02`
 ("`COMMON: Add createReadStreamForAltStream to open Mac resource fork and
 metadata streams`") as the first commit introducing the issue.
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/14753#comment:5>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list