[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