Opened 11 years ago
Closed 11 years ago
#6358 closed defect (fixed)
LSL6: ScummVM locks up at Electro-Shock room
Reported by: | SF/eoakford | Owned by: | bluegr |
---|---|---|---|
Priority: | normal | Component: | Engine: SCI |
Version: | Keywords: | ||
Cc: | Game: | Leisure Suit Larry 6 |
Description
Just when Char is about to give Larry Electro-Shock treatment, ScummVM completely hangs. Fortunately, this cutscene can be skipped.
ScummVM version: 1.7.0git561-gd530985 Language: English Version: CD Low-Res (from GOG.com) Platform: Debian 64-bit
Ticket imported from: #3614566. Ticket imported from: bugs/6358.
Attachments (2)
Change History (10)
by , 11 years ago
Attachment: | lsl6-cd.006 added |
---|
comment:1 by , 11 years ago
I don't have time to investigate properly right now, but it hangs for me too, with the main thread waiting for a lock somewhere in UpdateCues while the audio thread is in an apparent infinite loop in MidiParser_SCI::jumpToTick.
It didn't hang with a quick test with an older commit (ef61c64f3f8)
comment:2 by , 11 years ago
Can't load the attached savegame with my version of LSL6 (from the LSL Collection). Will have to play through from start and see if I can replicate this. If so, I'll run a bisection.
comment:3 by , 11 years ago
OK. Replicated as described as Char turns the voltage up, ScummVM hangs in what looks like a deadlock. Attaching savegame for replication. Starting bisection.
comment:4 by , 11 years ago
A gdb backtrace from the lockup shows the following of relevance: #7 0x000000000061f0e2 in Common::StackLock::StackLock (this=0x7fffffffc350, mutex=..., mutexName=0x0) at common/mutex.cpp:57 #8 0x00000000004a3864 in Sci::SciMusic::getSlot (this=0x10f9890, obj=...) at engines/sci/sound/music.cpp:223 #9 0x00000000004a7b5d in Sci::SoundCommandParser::processUpdateCues ( this=0x10f9850, obj=...) at engines/sci/sound/soundcmd.cpp:443 #10 0x00000000004a7b32 in Sci::SoundCommandParser::kDoSoundUpdateCues ( this=0x10f9850, argc=1, argv=0x10edaf4, acc=...) at engines/sci/sound/soundcmd.cpp:438 #11 0x000000000044c84b in Sci::kDoSoundUpdateCues (s=0x10ccf20, argc=1, argv=0x10edaf4) at engines/sci/engine/ksound.cpp:60 #12 0x000000000046a000 in Sci::callKernelFunc (s=0x10ccf20, kernelCallNr=45, argc=1) at engines/sci/engine/vm.cpp:431
comment:5 by , 11 years ago
Completed bisection: f280789afe397e384a81411a65e1e12a308c1125 is the first bad commit commit f280789afe397e384a81411a65e1e12a308c1125 Author: Willem Jan Palenstijn <wjp@usecode.org> Date: Tue Apr 16 23:10:09 2013 +0200
SCI: Don't suppress loop delta in SCI1 midi
This fixes bug #3293354.
comment:6 by , 11 years ago
The referenced bug artifact in that commit is "SCI: QFG3: Note timing in intro": https://sourceforge.net/tracker/?func=detail&aid=3293354&group_id=37116&atid=418820
comment:7 by , 11 years ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Savegame at Electro-Shock Room.