[Scummvm-tracker] [ScummVM :: Bugs] #16126: AGS: 1213 Special Edition Freeware is crashing ScummVM

ScummVM :: Bugs trac at scummvm.org
Wed Jul 30 21:35:40 UTC 2025


#16126: AGS: 1213  Special Edition Freeware is crashing ScummVM
----------------------------------+--------------------------
Reporter:  webangel3              |       Owner:  (none)
    Type:  defect                 |      Status:  new
Priority:  normal                 |   Component:  Engine: AGS
 Version:                         |  Resolution:
Keywords:  1213  Special Edition  |        Game:
----------------------------------+--------------------------
Comment (by criezy):

 Without ASAN the crash happens randomly, and may occur later.

 There are other issues with this game but they are unrelated. Just playing
 a few minutes I found two other issues. But I confirmed both also happen
 when starting episode 3 directly (not using the SE launcher).

 1. Pressing the Esc key while on the initial screen of episode 3 (the one
 with the Jeremiah quote) crashes SummVM.
 {{{
 4   int CLIP<int>(int, int, int) + 80 (util.h:74)
 5   AGS3::set_clip_rect(AGS3::BITMAP*, int, int, int, int) + 212
 (gfx.cpp:58)
 6   AGS3::AGS::Shared::Bitmap::ResetClip() + 480 (allegro_bitmap.cpp:186)
 7   AGS3::recycle_bitmap(AGS3::AGS::Shared::Bitmap*, int, int, int, bool)
 + 124
 8   AGS3::recycle_bitmap(Common::ScopedPtr<AGS3::AGS::Shared::Bitmap,
 Common::DefaultDeleter<AGS3::AGS::Shared::Bitmap>>&, int, int, int, bool)
 + 72
 9   AGS3::construct_object_gfx(AGS3::ViewFrame const*, int, AGS3::Size
 const&, int, AGS3::ObjectCache const&, AGS3::ObjectCache&,
 AGS3::ObjTexture&, bool, bool) + 5440
 10  AGS3::construct_char_gfx(int, bool) + 2756
 11  AGS3::prepare_characters_for_drawing() + 2368
 12  AGS3::prepare_room_sprites() + 1980
 13  AGS3::construct_room_view() + 556
 14  AGS3::construct_game_scene(bool) + 3964
 15  AGS3::create_savegame_screenshot() + 1508 (game.cpp:854)
 16  AGS3::save_game(int, char const*) + 1424 (game.cpp:886)
 17  AGS3::post_script_cleanup() + 2888 (script.cpp:599)
 18  AGS3::RunScriptFunction(AGS3::ccInstance*, char const*, unsigned long,
 AGS3::RuntimeScriptValue const*) + 1268 (script.cpp:370)
 19  AGS3::RunScriptFunctionInRoom(char const*, unsigned long,
 AGS3::RuntimeScriptValue const*) + 136 (script.cpp:395)
 20  AGS3::RunScriptFunctionAuto(AGS3::ScriptInstType, char const*,
 unsigned long, AGS3::RuntimeScriptValue const*) + 88 (script.cpp:431)
 21  AGS3::QueueScriptFunction(AGS3::ScriptInstType, char const*, unsigned
 long, AGS3::RuntimeScriptValue const*) + 344 (script.cpp:285)
 22  AGS3::run_interaction_commandlist(AGS3::ObjectEvent const&,
 AGS3::AGS::Shared::InteractionCommandList*, int*, int*) + 1384
 (script.cpp:721)
 23  AGS3::run_interaction_event(AGS3::ObjectEvent const&,
 AGS3::AGS::Shared::Interaction*, int, int, bool) + 1120 (script.cpp:135)
 24  AGS3::process_event(AGS3::EventHappened const*) + 6464 (event.cpp:188)
 25  AGS3::processallevents() + 1204 (event.cpp:374)
 26  AGS3::game_loop_update_events() + 572 (game_run.cpp:713)
 27  AGS3::UpdateGameOnce(bool, AGS3::AGS::Engine::IDriverDependantBitmap*,
 int, int) + 2164 (game_run.cpp:868)
 28  AGS3::GameTick() + 220 (game_run.cpp:1016)
 29  AGS3::RunGameUntilAborted() + 444 (game_run.cpp:1110)
 30  AGS3::initialize_start_and_play_game(int, int) + 628
 (game_start.cpp:131)
 31  AGS3::initialize_engine(Std::map<AGS3::AGS::Shared::String,
 Std::map<AGS3::AGS::Shared::String, AGS3::AGS::Shared::String,
 Common::Less<AGS3::AGS::Shared::String>>,
 Common::Less<AGS3::AGS::Shared::String>> const&) + 2544 (engine.cpp:1160)
 32  AGS::AGSEngine::run() + 6856 (ags.cpp:243)
 }}}

 2. Quitting the episode using the in game menu causes an assert. Quitting
 with the GMM or keyboard shortcut works properly though.
 {{{
 4   Common::Array<AGS3::AGS::Shared::GUIMain>::operator[](unsigned int) +
 184
 5   AGS3::AGS::Shared::GUIObject::MarkChanged() + 336
 6   AGS3::AGS::Shared::GUIButton::SetText(AGS3::AGS::Shared::String
 const&) + 724
 7   AGS3::AGS::Shared::GUIButton::ReadFromFile(AGS3::AGS::Shared::Stream*,
 AGS3::GuiVersion) + 2940
 8   AGS3::AGS::Shared::GUI::ReadGUI(AGS3::AGS::Shared::Stream*, bool) +
 3344
 9
 AGS3::AGS::Shared::ReadGameData(AGS3::AGS::Shared::LoadedGameEntities&,
 AGS3::AGS::Shared::Stream*, AGS3::GameDataVersion) + 2260
 10  AGS3::load_game_file() + 1092
 11  AGS3::RunAGSGame(AGS3::AGS::Shared::String const&, unsigned int, int)
 + 2684
 12  AGS3::RunGameUntilAborted() + 776
 13  AGS3::initialize_start_and_play_game(int, int) + 628
 14  AGS3::initialize_engine(Std::map<AGS3::AGS::Shared::String,
 Std::map<AGS3::AGS::Shared::String, AGS3::AGS::Shared::String,
 Common::Less<AGS3::AGS::Shared::String>>,
 Common::Less<AGS3::AGS::Shared::String>> const&) + 2544
 15  AGS::AGSEngine::run() + 6856
 16  runGame(Plugin const*, OSystem&, DetectedGame const&, void const*) +
 8140 (main.cpp:319)
 }}}
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/16126#comment:7>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list