[Scummvm-tracker] [ScummVM :: Bugs] #15488: AGS: The Crimson Diamond can crash on quitting

ScummVM :: Bugs trac at scummvm.org
Fri Nov 15 10:47:28 UTC 2024


#15488: AGS: The Crimson Diamond can crash on quitting
-------------------------+-------------------------
Reporter:  eriktorbjorn  |      Owner:  (none)
    Type:  defect        |     Status:  new
Priority:  normal        |  Component:  Engine: AGS
 Version:                |   Keywords:
    Game:                |
-------------------------+-------------------------
 * Start the latest version of the game (1.10k).
 * Open the menu.
 * Press the button to change font (new to this version?) that reads either
 "Sans Font" or "Serif Font". This will cause a message box ("Font switched
 to ...") to open.
 * While the message box is still open, quit ScummVM.

 At this point, ScummVM crashes:

 {{{
 #0  0x00005555583ccc4a in AGS3::free_dynamic_sprite
     (slot=7965, notify_all=false)
     at engines/ags/engine/ac/dynamic_sprite.cpp:454
 #1  0x0000555558446c7b in AGS3::ScreenOverlay::~ScreenOverlay
     (this=0x555562ae0ba0, __in_chrg=<optimized out>)
     at engines/ags/engine/ac/screen_overlay.cpp:40
 #2  0x00005555582f70a1 in Common::Array<AGS3::ScreenOverlay>::freeStorage
     (this=0x555560b422d0, storage=0x555562ae0b60, elements=2)
     at ./common/array.h:481
 #3  0x00005555582f44ae in Common::Array<AGS3::ScreenOverlay>::~Array
     (this=0x555560b422d0, __in_chrg=<optimized out>) at
 ./common/array.h:136
 #4  0x00005555582eeae2 in Std::vector<AGS3::ScreenOverlay>::~vector
     (this=0x555560b422d0, __in_chrg=<optimized out>)
     at ./common/std/vector.h:39
 #5  0x00005555582ea36b in AGS3::Globals::~Globals
     (this=0x55556108dfd0, __in_chrg=<optimized out>)
     at engines/ags/globals.cpp:602
 #6  0x00005555582dffe2 in AGS::AGSEngine::~AGSEngine
     (this=0x555560f31780, __in_chrg=<optimized out>) at
 engines/ags/ags.cpp:107
 #7  0x00005555582e0026 in AGS::AGSEngine::~AGSEngine
     (this=0x555560f31780, __in_chrg=<optimized out>) at
 engines/ags/ags.cpp:110
 #8  0x00005555582f96a1 in
 AdvancedMetaEngine<AGS::AGSGameDescription>::deleteInstance
     (this=0x55555f200c80, engine=0x555560f31780, gameDescriptor=...,
 meDescriptor=0x55555fa86160) at ./engines/advancedDetector.h:722
 #9  0x0000555557e7804c in runGame
     (enginePlugin=0x55555f200c60, system=..., game=...,
 meDescriptor=0x55555fa86160) at base/main.cpp:324
 #10 0x0000555557e7a4c6 in scummvm_main (argc=1, argv=0x7fffffffdbd8)
     at base/main.cpp:796
 #11 0x0000555557e74daa in main (argc=1, argv=0x7fffffffdbd8)
     at backends/platform/sdl/posix/posix-main.cpp:44
 }}}

 Ironically, the line that it crashes on appears to be an assert(), but
 it's not the assert that's tripped?
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/15488>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list