[Scummvm-tracker] [ScummVM :: Bugs] #15086: GROOVIE: Clandestiny final cutscene crashes
ScummVM :: Bugs
trac at scummvm.org
Sat Nov 22 19:59:20 UTC 2025
#15086: GROOVIE: Clandestiny final cutscene crashes
-----------------------+------------------------------
Reporter: antoniou79 | Owner: antoniou79
Type: defect | Status: closed
Priority: high | Component: Engine: Groovie
Version: | Resolution: fixed
Keywords: | Game: Clandestiny
-----------------------+------------------------------
Comment (by antoniou79):
In [changeset:"8bd2178e84df3abce007e94c457b764ba0539ea3" 8bd2178e]:
{{{#!CommitTicketReference repository=""
revision="8bd2178e84df3abce007e94c457b764ba0539ea3"
GROOVIE: Avoid crash in Clandestiny finale video
This fixes bug #15086
If a faulty block is processed (in ROQPlayer::processBlock()) and we end
up at a different file position (currFilePos) than the one calculated
(endPos) based on its block header "size" value, and if currFilePos <
endPos, first check the header of the next block at currFilePos for a
known/valid type. If the next block has no known type, then go at the
endPos instead and check there for a valid header type of the next block.
If that is of a known type, continue from there (this is the case with the
faulty block in the finale video of Clandestiny). Otherwise, go back to
currFilePos and try your luck from there (this was the previous behavior
here).
In the reported case, which maybe unique, the type of the fault block is
0x1002 (Quad codebook).
This fix still results in a corrupted frame, but that seems to match the
original behavior (based on watching old youtube playthroughs).
}}}
--
Ticket URL: <https://bugs.scummvm.org/ticket/15086#comment:17>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list