[Scummvm-tracker] [ScummVM :: Bugs] #16381: WAGE: Zhore's Xers crash when restarting game
ScummVM :: Bugs
trac at scummvm.org
Sat Dec 6 06:38:20 UTC 2025
#16381: WAGE: Zhore's Xers crash when restarting game
-------------------------+-----------------------
Reporter: eriktorbjorn | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: --Unset--
Version: | Keywords:
Game: |
-------------------------+-----------------------
Steps to reproduce:
* Start the game Zhore's Xers. Use the Command menu to skip through the
introduction messages.
* From Beside Moat, go south. This will end the game.
* Select New from the File menu. Use the Command menu to skip through the
introduction messages.
This time, "Start Game" will crash ScummVM with the following assertion:
{{{
scummvm: backends/timer/default/default-timer.cpp:128: virtual bool
DefaultTimerManager::installTimerProc(Common::TimerManager::TimerProc,
int32, void*, const Common::String&): Assertion `interval > 0' failed.
}}}
Though it seems it doesn't always happen. I was able to capture this
backtrace of it, however:
{{{
#0 __pthread_kill_implementation
(threadid=<optimized out>, signo=signo at entry=6, no_tid=no_tid at entry=0)
at ./nptl/pthread_kill.c:44
#1 0x00007ffff609e9ff in __pthread_kill_internal
(threadid=<optimized out>, signo=6) at ./nptl/pthread_kill.c:89
#2 0x00007ffff6049cc2 in __GI_raise (sig=sig at entry=6)
at ../sysdeps/posix/raise.c:26
#3 0x00007ffff60324ac in __GI_abort () at ./stdlib/abort.c:73
#4 0x00007ffff6032420 in __assert_fail_base
(fmt=<optimized out>, assertion=<optimized out>, file=<optimized out>,
line=128, function=<optimized out>) at ./assert/assert.c:118
#5 0x000055555cd5d401 in DefaultTimerManager::installTimerProc
(this=0x5555612c41c0, callback=0x55555ca1996f
<Wage::soundTimer(void*)>, interval=-37000, refCon=0x55556258dd40, id=...)
at backends/timer/default/default-timer.cpp:128
#6 0x000055555ca19eda in Wage::soundTimer (refCon=0x55556258dd40)
at engines/wage/sound.cpp:183
#7 0x000055555ca1a07b in Wage::WageEngine::updateSoundTimerForScene
(this=0x55556145da20, scene=0x55556258dd40, firstTime=true)
at engines/wage/sound.cpp:206
#8 0x000055555ca1cf43 in Wage::WageEngine::redrawScene
(this=0x55556145da20)
at engines/wage/wage.cpp:494
#9 0x000055555ca1ce85 in Wage::WageEngine::onMove
(this=0x55556145da20, what=0x5555625886a0, from=0x555562e20090,
to=0x55556258dd40) at engines/wage/wage.cpp:480
#10 0x000055555ca1fe17 in Wage::World::move
(this=0x555562f62470, chr=0x5555625886a0, scene=0x55556258dd40,
skipSort=false) at engines/wage/world.cpp:510
#11 0x000055555ca15bb5 in Wage::Script::compare
(this=0x555562f6b3e0, o1=0x555563036f00, o2=0x5555630b5000,
comparator=21)
at engines/wage/script.cpp:883
#12 0x000055555ca15e97 in Wage::Script::evaluatePair
(this=0x555562f6b3e0, lhs=0x555563036f00, op=0x555557f36f28 "M",
rhs=0x555562fc4ec0) at engines/wage/script.cpp:914
#13 0x000055555ca16ca0 in Wage::Script::processMove (this=0x555562f6b3e0)
at engines/wage/script.cpp:1088
#14 0x000055555ca12fd2 in Wage::Script::execute
(this=0x555562f6b3e0, world=0x555562f62470, loopCount=1,
inputText=0x7fffffffb660, inputClick=0x0) at engines/wage/script.cpp:224
#15 0x000055555ca1d168 in Wage::WageEngine::processTurnInternal
(this=0x55556145da20, textInput=0x7fffffffb660, clickInput=0x0)
at engines/wage/wage.cpp:523
#16 0x000055555ca1d537 in Wage::WageEngine::processTurn
(this=0x55556145da20, textInput=0x55556304f320, clickInput=0x0)
at engines/wage/wage.cpp:583
#17 0x000055555ca0c200 in Wage::Gui::executeMenuCommand
(this=0x55556259e290, action=13, text=...) at engines/wage/gui.cpp:391
#18 0x000055555ca0bebe in Wage::menuCommandsCallback
(action=13, text=..., data=0x55556259e290) at engines/wage/gui.cpp:319
#19 0x000055555d00a2a3 in Graphics::MacMenu::mouseRelease
(this=0x555562f6ada0, x=151, y=28) at graphics/macgui/macmenu.cpp:1614
#20 0x000055555d008aca in Graphics::MacMenu::processEvent
(this=0x555562f6ada0, event=...) at graphics/macgui/macmenu.cpp:1307
#21 0x000055555d02e747 in Graphics::MacWindowManager::processEvent
(this=0x555562592fd0, event=...)
at graphics/macgui/macwindowmanager.cpp:1094
#22 0x000055555ca0be88 in Wage::Gui::processEvent
(this=0x55556259e290, event=...) at engines/wage/gui.cpp:313
#23 0x000055555ca1bced in Wage::WageEngine::processEvents
(this=0x55556145da20)
at engines/wage/wage.cpp:255
#24 0x000055555ca1b87a in Wage::WageEngine::run (this=0x55556145da20)
at engines/wage/wage.cpp:185
#25 0x000055555814d41c in runGame
(enginePlugin=0x55555fdfd4a0, system=..., game=...,
meDescriptor=0x5555614287f0) at base/main.cpp:317
#26 0x000055555814f88a in scummvm_main (argc=1, argv=0x7fffffffe608)
at base/main.cpp:803
#27 0x000055555814a322 in main (argc=1, argv=0x7fffffffe608)
}}}
--
Ticket URL: <https://bugs.scummvm.org/ticket/16381>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list