Opened 9 years ago
Closed 5 years ago
#6618 closed defect (fixed)
RINGWORLD2: Game can hang when restoring savegame
|Reported by:||eriktorbjorn||Owned by:||csnover|
|Version:||Keywords:||has-save-game, has-backtrace, has-pull-request|
|Cc:||Game:||Return to Ringworld|
While preparing bug report #6617 I noticed that if I try to load the savegame attached to that bug report while the creature that appears when you play the flute (and the game is waiting for me to click to dismiss a message), ScummVM will hang on a black screen.
Ticket imported from: bugs/6618.
Change History (8)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Ah, it is stuck in an Stacklock mutex in the audio. Backtrace follows:
#4 0x00000000006e0940 in SdlMutexManager::lockMutex
(this=0xc033c0, mutex=0xe051c0) at backends/mutex/sdl/sdl-mutex.cpp:36 #5 0x00000000006cdeaa in ModularBackend::lockMutex (this=0xbb1010, mutex=0xe051c0) at backends/modular-backend.cpp:222 #6 0x00000000007bc06b in Common::StackLock::lock (this=0x7ffffffb7020) at common/mutex.cpp:68 #7 0x00000000007bbfee in Common::StackLock::StackLock (this=0x7ffffffb7020, mutex=..., mutexName=0x0) at common/mutex.cpp:57 #8 0x0000000000775c80 in Audio::MixerImpl::stopHandle (this=0xe2d330, handle=...) at audio/mixer.cpp:324 #9 0x00000000005bdb57 in TsAGE::PlayStream::stop (this=0x12d7c60) at engines/tsage/sound.cpp:2646 #10 0x00000000005a71dd in TsAGE::Ringworld2::VisualSpeaker::stopSpeaking ( this=0x1336590) at engines/tsage/ringworld2 /ringworld2_speakers.cpp:269 #11 0x000000000065ffc9 in TsAGE::StripManager::remove (this=0x13359c0) at engines/tsage/converse.cpp:746 #12 0x0000000000423d2a in TsAGE::Action::remove (this=0x1335980) at engines/tsage/core.cpp:195 #13 0x00000000004de15e in TsAGE::Ringworld2::SceneExt::remove (this=0x1335980) at engines/tsage/ringworld2/ringworld2_logic.cpp:402 #14 0x00000000005b231e in TsAGE::SceneManager::sceneChange (this=0x12d2d68) at engines/tsage/scenes.cpp:78 #15 0x00000000005b2d0c in TsAGE::SceneManager::listenerSynchronize ( this=0x12d2d68, s=...) at engines/tsage/scenes.cpp:252 #16 0x000000000041cc81 in TsAGE::Saver::restore (this=0x1205300, slot=28) at engines/tsage/saveload.cpp:201 #17 0x00000000004341a4 in TsAGE::SceneHandler::dispatch (this=0x12282a0) at engines/tsage/core.cpp:4445 #18 0x00000000004ded4d in TsAGE::Ringworld2::SceneHandlerExt::dispatch ( this=0x12282a0) at engines/tsage/ringworld2 /ringworld2_logic.cpp:630 #19 0x000000000043372f in TsAGE::GameHandler::execute (this=0x12282a0) at engines/tsage/core.cpp:4263 #20 0x00000000005b498e in TsAGE::Game::execute (this=0x1228280) at engines/tsage/scenes.cpp:617 #21 0x000000000041f714 in TsAGE::TSageEngine::run (this=0x121bc40) at engines/tsage/tsage.cpp:134
comment:3 by , 5 years ago
|Priority:||normal → blocker|
Raising all identified crasher, hang, and memory violation bugs which I could not fully triage myself to blocker priority for the next release.
comment:4 by , 5 years ago
by , 5 years ago
comment:5 by , 5 years ago
comment:6 by , 5 years ago
comment:7 by , 5 years ago
|Status:||new → closed|
Thanks for your report! A patch for this issue has been added in commit fe45300891fea90f7ad72d66af7f060c3ec6b753 and will be available in daily builds 1.10.0git-5490 and later.
The relevant savegame is: https://sourceforge.net/p/scummvm/bugs/6617/attachment/ringworld2-cd.028
Replicated here with latest git master on Linux x86_64. Will get gdb backtrace to see where it is hung up.