[Scummvm-tracker] [ScummVM :: Bugs] #12932: Grim Fandango crash after solving the signpost in the Petrified Forest

ScummVM :: Bugs trac at scummvm.org
Sun Sep 19 18:19:25 UTC 2021


#12932: Grim Fandango crash after solving the signpost in the Petrified Forest
---------------------+----------------------------
Reporter:  Die4Ever  |       Owner:  (none)
    Type:  defect    |      Status:  new
Priority:  blocker   |   Component:  Engine: Grim
 Version:            |  Resolution:
Keywords:  crash     |        Game:  Grim Fandango
---------------------+----------------------------
Comment (by eriktorbjorn):

 It was pointed out to me that moveToFadeOutTrack() is unique to the GrimE
 engine. The SCUMM version only uses cloneToFadeOutTrack().

 The moveToFadeOutTrack() function was added in
 https://github.com/scummvm/scummvm/commit/6bb4658ea60548fca0a5304e7b21e603e8f2e107
 to fix "the sound skipping a bit when a fade out starts because the clone
 track doesn't copy the queued buffers".

 So I guess that answers antoniou79 question, "Why not always use the clone
 to fadeout, which is safer?"

 And, as suspected, replacing moveToFadeOutTrack() with this:

 {{{
 Track *Imuse::moveToFadeOutTrack(Track *track, int fadeDelay) {
         Track *fadeTrack = cloneToFadeOutTrack(track, fadeDelay);
         flushTrack(track);
         return fadeTrack;
 }}}

 does seem to fix the crash. I couldn't say how much of the aforementioned
 skipping it reintroduces, though.
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/12932#comment:13>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list