ASSERT(crawl_state.need_save) in 'travel.cc' at line 1321 failed. (Pathfind with mode -1 without a game?)

Version: Dungeon Crawl Stone Soup 0.32.1-6-ge8736a44df
Platform: unix
Bits: 64
Game mode: normal
Tiles: online

Seed: 1259440328521885209, deterministic pregen: 1
Command line: /usr/games/crawl-0.32 -name Dragmonsaur -rc /dgldir/rcfiles/crawl-0.32/Dragmonsaur.rc -macro /dgldir/rcfiles/crawl-0.32/Dragmonsaur.macro -morgue /dgldir/morgue/Dragmonsaur/ -webtiles-socket /crawl-master/webserver/sockets/Dragmonsaur:2025-03-11.09:06:05.sock -await-connection

RC options:
restart_after_game = false


Crash caused by signal #6: Aborted

Obtained 37 stack frames.
/usr/games/crawl-0.32(_Z17write_stack_traceP8_IO_FILE+0x3e) [0x5f894cfc72de]: write_stack_trace(_IO_FILE*)
/usr/games/crawl-0.32(_Z13do_crash_dumpv+0x43a) [0x5f894cfd543a]: do_crash_dump()
/usr/games/crawl-0.32(_Z20crash_signal_handleri+0x1fa) [0x5f894cfc77ba]: crash_signal_handler(int)
/lib/x86_64-linux-gnu/libc.so.6(+0x42910) [0x75a652c42910]: 
/lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11b) [0x75a652c9999b]: 
/lib/x86_64-linux-gnu/libc.so.6(raise+0x16) [0x75a652c42866]: 
/usr/games/crawl-0.32(+0x4a575d) [0x5f894cfd475d]: 
/usr/games/crawl-0.32(_Z12AssertFailedPKcS0_iS0_z+0x1a1) [0x5f894cfd4cf1]: AssertFailed(char const*, char const*, int, char const*, ...)
/usr/games/crawl-0.32(_ZN15travel_pathfind8pathfindE13run_mode_typeb+0x395) [0x5f894d65fd95]: travel_pathfind::pathfind(run_mode_type, bool)
/usr/games/crawl-0.32(_Z12click_travelRK9coord_defb+0x139) [0x5f894d664729]: click_travel(coord_def const&, bool)
/usr/games/crawl-0.32(_ZN14TilesFramework23_handle_control_messageE11sockaddr_unNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x9d6) [0x5f894d71fff6]: TilesFramework::_handle_control_message(sockaddr_un, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)
/usr/games/crawl-0.32(_ZN14TilesFramework24_receive_control_messageEv+0x178) [0x5f894d720608]: TilesFramework::_receive_control_message()
/usr/games/crawl-0.32(_ZN14TilesFramework11await_inputERjb+0x18a) [0x5f894d720b1a]: TilesFramework::await_input(unsigned int&, bool)
/usr/games/crawl-0.32(_Z8getch_ckv+0x121) [0x5f894d724121]: getch_ck()
/usr/games/crawl-0.32(_ZN2ui11pump_eventsEi+0xf0) [0x5f894d677100]: ui::pump_events(int)
/usr/games/crawl-0.32(_ZN4Menu7do_menuEv+0x43a) [0x5f894d30fd1a]: Menu::do_menu()
/usr/games/crawl-0.32(_ZN4Menu4showEb+0xa8) [0x5f894d317298]: Menu::show(bool)
/usr/games/crawl-0.32(_Z17display_inventoryv+0xa6) [0x5f894d1cf576]: display_inventory()
/usr/games/crawl-0.32(_Z8end_gameR15scorefile_entry+0x1b8) [0x5f894d0a8728]: end_game(scorefile_entry&)
/usr/games/crawl-0.32(_Z4ouchi16kill_method_typejPKcbS1_+0x26c2) [0x5f894d4615c2]: ouch(int, kill_method_type, unsigned int, char const*, bool, char const*)
/usr/games/crawl-0.32(_ZN6player4hurtEPK5actori9beam_type16kill_method_typeNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_bb+0x59) [0x5f894d491599]: player::hurt(actor const*, int, beam_type, kill_method_type, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, bool)
/usr/games/crawl-0.32(_ZN12melee_attack31attacker_sustain_passive_damageEv+0x1d4) [0x5f894d2fb4c4]: melee_attack::attacker_sustain_passive_damage()
/usr/games/crawl-0.32(_ZN12melee_attack6attackEv+0x688) [0x5f894d306d78]: melee_attack::attack()
/usr/games/crawl-0.32(_Z11fight_meleeP5actorS0_Pbb+0x793) [0x5f894d0c61d3]: fight_melee(actor*, actor*, bool*, bool)
/usr/games/crawl-0.32(_Z18move_player_action9coord_def+0x164a) [0x5f894d41ffba]: move_player_action(coord_def)
/usr/games/crawl-0.32(_ZN14TilesFramework23_handle_control_messageE11sockaddr_unNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x9f4) [0x5f894d720014]: TilesFramework::_handle_control_message(sockaddr_un, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)
/usr/games/crawl-0.32(_ZN14TilesFramework24_receive_control_messageEv+0x178) [0x5f894d720608]: TilesFramework::_receive_control_message()
/usr/games/crawl-0.32(_ZN14TilesFramework11await_inputERjb+0x18a) [0x5f894d720b1a]: TilesFramework::await_input(unsigned int&, bool)
/usr/games/crawl-0.32(_Z8getch_ckv+0x121) [0x5f894d724121]: getch_ck()
/usr/games/crawl-0.32(+0x771045) [0x5f894d2a0045]: 
/usr/games/crawl-0.32(_Z25getch_with_command_macrosv+0x210) [0x5f894d2a3df0]: getch_with_command_macros()
/usr/games/crawl-0.32(+0xc02374) [0x5f894d731374]: 
/usr/games/crawl-0.32(+0xc02d55) [0x5f894d731d55]: 
/usr/games/crawl-0.32(main+0x1f7) [0x5f894cf01077]: 
/lib/x86_64-linux-gnu/libc.so.6(+0x280d0) [0x75a652c280d0]: 
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x89) [0x75a652c28189]: 
/usr/games/crawl-0.32(_start+0x25) [0x5f894cf01a95]: 

Trying to run gdb.
GNU gdb (Ubuntu 14.0.50.20230907-0ubuntu1) 14.0.50.20230907-git
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x000075a652d0fbf7 in __GI___wait4 (pid=1877708, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30
#0  0x000075a652d0fbf7 in __GI___wait4 (pid=1877708, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30
        sc_ret = -512
        sc_ret = <optimized out>
#1  0x00005f894cfc798c in call_gdb (file=0x75a652dff6c0 <_IO_2_1_stderr_>) at crash.cc:438
        gdb = <optimized out>
        attach_cmd = "attach 1877459\000\000\000\000\000"
#2  0x00005f894cfd5458 in do_crash_dump () at dbg-asrt.cc:692
        t = 1741684034
        dir = "/dgldir/morgue/Dragmonsaur/"
        name = "/dgldir/morgue/Dragmonsaur/crash-Dragmonsaur-20250311-090714.txt", '\000' <repeats 115 times>
        signal_info = "Crash caused by signal #6: Aborted"
        cause_msg = "ASSERT(crawl_state.need_save) in 'travel.cc' at line 1321 failed. (Pathfind with mode -1 without a game?)"
        file = 0x75a652dff6c0 <_IO_2_1_stderr_>
#3  0x00005f894cfc77ba in crash_signal_handler (sig_num=6) at crash.cc:198
No locals.
#4  <signal handler called>
No locals.
#5  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
        tid = <optimized out>
        ret = 0
        pd = <optimized out>
        old_mask = {__val = {140723832370464}}
        ret = <optimized out>
        pd = <optimized out>
        old_mask = <optimized out>
        ret = <optimized out>
        tid = <optimized out>
        ret = <optimized out>
        resultvar = <optimized out>
        resultvar = <optimized out>
        __arg3 = <optimized out>
        __arg2 = <optimized out>
        __arg1 = <optimized out>
        _a3 = <optimized out>
        _a2 = <optimized out>
        _a1 = <optimized out>
        __futex = <optimized out>
        resultvar = <optimized out>
        __arg3 = <optimized out>
        __arg2 = <optimized out>
        __arg1 = <optimized out>
        _a3 = <optimized out>
        _a2 = <optimized out>
        _a1 = <optimized out>
        __futex = <optimized out>
        __private = <optimized out>
        __oldval = <optimized out>
#6  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
No locals.
#7  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
No locals.
#8  0x000075a652c42866 in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26
        ret = <optimized out>
#9  0x00005f894cfd475d in _BreakStrToDebugger (mesg=mesg@entry=0x7ffcd20a3720 "ASSERT(crawl_state.need_save) in 'travel.cc' at line 1321 failed. (Pathfind with mode -1 without a game?)", assert=true) at dbg-asrt.cc:818
No locals.
#10 0x00005f894cfd4cf1 in AssertFailed (expr=expr@entry=0x5f894d776ba0 "crawl_state.need_save", file=file@entry=0x5f894d776a27 "travel.cc", line=line@entry=1321, text=text@entry=0x5f894d7f2630 "Pathfind with mode %d without a game?") at dbg-asrt.cc:851
        detail = "Pathfind with mode -1 without a game?\000\000\000 ϨM\211_\000\000\264\021\201\270\001\000\000\000\3005\n\322\374\177\000\000p6\n\322\374\177\000\000@6\n\322\374\177\000\000`6\n\322\374\177\000\000\2405\n\322\374\177\000\000\264\021U$\270\217{\246\000\000\000\000\363!\270\tp\315SO\211_\000\000\230|\206P\211_\000\000\2605\n\322\374\177\000\000\005\000\000\000\000\000\000\000jelly\000\000\000\000\232h\024\363!\270\t\3205\n\322\374\177\000\000\005\000\000\000\000\000\000\000jelly\000\000\000\200n\307M\211_\000\000\3605\n\322\374\177", '\000' <repeats 11 times>...
        final_mesg = "ASSERT(crawl_state.need_save) in 'travel.cc' at line 1321 failed. (Pathfind with mode -1 without a game?)\000\000\000\000\000\000\000\220n\307M\211_\000\000\3608\n\322\374\177\000\000\027\000\000\000\000\000\000\000pB;O\211_\000\000@\366\022M\211_\000\000P\367\022M\211_\000\000h\377\377\377\377\377\377\377\002\000\000\000\000\000\000\000\000\264\206P\211_\000\000\363\207\312R\246u\000\000\3607\n\322\374\177\000\000"...
        mesg = "ASSERT(crawl_state.need_save) in 'travel.cc' at line 1321 failed.\000\000\000\000\000\000\000l\274\nM\211_\000\000\360\275\nO\211_\000\000\000\232h\024\363!\270\t\360\275\nO\211_\000\000\030e4O\211_\000\000(\3608O\211_\000\000\322 #M\211_\000\000\020\"\037O\211_\000\000\020\"\037O\211_\000\000\360\275\nO\211_\000\000\034][S\246u\000\000\3604\n\322\374\177\000\000\000\232h\024\363!\270\t\2704\n\322\374\177\000\000\3405\n\322\374\177\000\000\3005\n\322\374\177\000\000"...
        args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7ffcd20a3c10, reg_save_area = 0x7ffcd20a3b30}}
        fileName = <optimized out>
#11 0x00005f894d65fd95 in travel_pathfind::pathfind (this=this@entry=0x7ffcd20a3c90, rmode=<optimized out>, rmode@entry=RMODE_TRAVEL, fallback_explore=fallback_explore@entry=false) at travel.cc:1321
        saved_ipt = {val = @0x5f894dc271f4, oldval = false}
        slime_wall_check = <optimized out>
        slime_neighbours = {did_compute_mask = false}
        found_target = <optimized out>
#12 0x00005f894d664729 in click_travel (gc=..., force=force@entry=false) at travel.cc:5173
        cmd = -9998
        tp = {_vptr.travel_pathfind = 0x5f894da6da10 <vtable for travel_pathfind+16>, static UNFOUND_DIST = -30000, static INFINITE_DIST = 30000, runmode = RMODE_TRAVEL, start = {x = 34, y = 37}, dest = {x = 37, y = 38}, next_travel_move = {x = 0, y = 0}, floodout = false, double_flood = false, ignore_hostile = false, ignore_danger = true, annotate_map = false, ls = 0x0, need_for_greed = false, autopickup = false, unexplored_place = {x = 0, y = 0}, greedy_place = {x = 0, y = 0}, unexplored_dist = 0, greedy_dist = 0, refdist = 0x0, reseed_points = std::vector of length 0, capacity 0, features = 0x0, unreachables = std::set with 0 elements, point_distance = 0x5f894dc21380 <travel_point_distance>, next_iter_points = 0, traveled_distance = 0, circ_index = 0, static circumference = <error reading variable: value requires 89600 bytes, which is more than max-value-size>, try_fallback = false}
        dest = {x = 1335952512, y = 24457}
#13 0x00005f894d71fff6 in _handle_cell_click (force=false, button=<optimized out>, gc=...) at tileweb.cc:396
        c = <optimized out>
#14 TilesFramework::_handle_control_message (this=this@entry=0x5f894dc2be20 <tiles>, addr=..., data="{\"x\":3,\"y\":-14,\"button\":1,\"msg\":\"click_cell\"}") at tileweb.cc:532
        y = <optimized out>
        button = <optimized out>
        force = {node = 0x0}
        gc = {x = 34, y = 37}
        x = <optimized out>
        obj = <optimized out>
        msg = <optimized out>
        msgtype = "click_cell"
        c = 0
#15 0x00005f894d720608 in TilesFramework::_receive_control_message (this=this@entry=0x5f894dc2be20 <tiles>) at tileweb.cc:357
        buf = "{\"x\":3,\"y\":-14,\"button\":1,\"msg\":\"click_cell\"}_\000\000\224\224wM\211_\000\000\002\000\000\000\374\177\000\000\360@\n\322\374\177\000\000\000&\000\000\001\000\000\000pv\206P\002\000\000\000]?tM\211_\000\000^?tM\211_\000\000\002\000\000\000\374\177\000\000\000\000\000\000\002\000\000\000\365\316\305R\246u\000\000\234|\206P\211_\000\000@F\n\322\374\177\000\000\2231tM\211_\000\000\020\000\000\0000\000\000\000 O\n\322\374\177\000\000PN\n\322\374\177\000\000\000\000\000\000\000\000\000\000B\vgO\211_\000\000\240F\n\322\374\177\000\000"...
        srcaddr = {sun_family = 1, sun_path = "/tmp/crawl0jh_n01f.socket", '\000' <repeats 82 times>}
        srcaddr_len = 28
        len = <optimized out>
        data = "{\"x\":3,\"y\":-14,\"button\":1,\"msg\":\"click_cell\"}"
#16 0x00005f894d720b1a in TilesFramework::await_input (this=this@entry=0x5f894dc2be20 <tiles>, c=@0x7ffcd20a51b0: 1741684034, block=block@entry=true) at tileweb.cc:650
        result = <optimized out>
        fds = {fds_bits = {8, 0 <repeats 15 times>}}
        maxfd = 3
        __d = <optimized out>
        __d = <optimized out>
#17 0x00005f894d724121 in _get_key_from_curses () at libunix.cc:528
        c = 1741684034
        c = <optimized out>
        c = <optimized out>
#18 getch_ck () at libunix.cc:616
        c = <optimized out>
#19 0x00005f894d677100 in ui::pump_events (wait_event_timeout=wait_event_timeout@entry=2147483647) at ui.cc:3292
        macro_key = -1
        k = <optimized out>
#20 0x00005f894d30fd1a in Menu::do_menu (this=this@entry=0x7ffcd20a5470) at menu.cc:1580
        done = false
#21 0x00005f894d317298 in Menu::show (this=this@entry=0x7ffcd20a5470, reuse_selections=reuse_selections@entry=true) at menu.cc:1518
        cs = {cstate = false}
#22 0x00005f894d1cf576 in display_inventory () at invent.cc:1317
        menu = {<Menu> = {_vptr.Menu = 0x5f894da86110 <vtable for InvMenu+16>, f_selitem = 0x0, f_keyfilter = {<std::_Maybe_unary_or_binary_function<int, int>> = {<std::unary_function<int, int>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = '\000' <repeats 15 times>}, _M_manager = 0x0}, _M_invoker = 0x0}, on_single_selection = {<std::_Maybe_unary_or_binary_function<bool, MenuEntry const&>> = {<std::unary_function<MenuEntry const&, bool>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = '\000' <repeats 15 times>}, _M_manager = 0x0}, _M_invoker = 0x0}, on_examine = {<std::_Maybe_unary_or_binary_function<bool, MenuEntry const&>> = {<std::unary_function<MenuEntry const&, bool>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = '\000' <repeats 15 times>}, _M_manager = 0x0}, _M_invoker = 0x0}, on_show = {<std::_Maybe_unary_or_binary_function<bool>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = '\000' <repeats 15 times>}, _M_manager = 0x0}, _M_invoker = 0x0}, action_cycle = Menu::CYCLE_NONE, menu_action = Menu::ACT_EXAMINE, _title_prompt_help_tag = "", title = 0x5f894f43fc20, title2 = 0x0, m_indent_title = false, flags = 270850, tag = "inventory", cur_page = 1, num_pages = 0, more = {ops = std::vector of length 0, capacity 0}, m_keyhelp_more = true, items = std::vector of length 13, capacity 16 = {0x5f89508672c0, 0x5f894f523a80, 0x5f89508673b0, 0x5f894f207800, 0x5f89508667b0, 0x5f894f351770, 0x5f89508668a0, 0x5f894f0b6df0, 0x5f894f3774f0, 0x5f894f406c80, 0x5f895086d020, 0x5f894f3acfb0, 0x5f895086d110}, sel = std::vector of length 0, capacity 0, select_filter = std::vector of length 0, capacity 0, highlighter = 0x5f894f4440e0, num = -1, lastch = 0, alive = true, more_needs_init = false, remap_numpad = true, last_hovered = -1, m_kmc = KMC_MENU, m_filter = 0x0, m_ui = {popup = std::shared_ptr<ui::Popup> (use count 2, weak count 1) = {get() = 0x5f89508686b0}, menu = std::shared_ptr<UIMenu> (use count 2, weak count 1) = {get() = 0x5f894f572230}, scroller = std::shared_ptr<ui::Scroller> (use count 2, weak count 1) = {get() = 0x5f89507eeb50}, title = std::shared_ptr<ui::Text> (use count 2, weak count 1) = {get() = 0x5f8950868470}, more = std::shared_ptr<UIMenuMore> (use count 2, weak count 1) = {get() = 0x5f894f1af170}, more_bin = std::shared_ptr<UIShowHide> (empty) = {get() = 0x0}, vbox = std::shared_ptr<ui::Box> (use count 2, weak count 1) = {get() = 0x5f8950867590}}, _webtiles_title_changed = false, _webtiles_title = {ops = std::vector of length 2, capacity 2 = {{type = FSOP_COLOUR, colour = 15, text = ""}, {type = FSOP_TEXT, colour = -1, text = "Inventory: 8/52 slots"}}}}, type = menu_type::describe, pre_select = 0x0, title_annotate = 0x0, temp_title = "", _mode_special_drop = false}
#23 0x00005f894d0a8728 in end_game (se=...) at end.cc:334
        death_type = KILLED_BY_ACID
        non_death = false
        hiscore_index = -1
        fname = "morgue-Dragmonsaur-20250311-090713"
        exit_reason = <optimized out>
        reason = "dead"
        title_hbox = std::shared_ptr<ui::Box> (use count 1396593952, weak count 30117) = {get() = 0x75a6533e5520}
        death_tile = <optimized out>
        tile = <optimized out>
        goodbye_title = '\377' <repeats 12 times>, "\321\001\377\377\377\377\377\377\377\377\377\377\005\001", '\377' <repeats 14 times>, "\311\001\377\377\377\377\t\001\330\000x\000\377\377\377\377\377\377\264\000\377\377\377\377X\000\377\377\244\001\377\377\216\001\377\377\\\001\377\377\377\377\023\000\377\377\377\377\377\377g\001\377\377\256\000\377\377\365\000\377\377J\000\377\377\377\377\377\377\377\377\377\377\r\001\377\377\340\001\377\377\377\377\377\377|\000\377\377\377\377\377\377\206\001{\001o\001\377\377\377\377\274\001\377\377\377\377\377\3771\001\377\377\377\377k\001\377\377\377\377\343\001y\001\377\377\377\377\377\377\377\377\314\001", '\377' <repeats 14 times>, "\314\000&\000\377\377R\000"...
        vbox = std::shared_ptr<ui::Box> (use count 611617608, weak count 609520407) = {get() = 0x75a6533ef860}
        goodbye_msg = <error: Cannot access memory at address 0x18>
        hiscore = <error: Cannot access memory at address 0x60000000c>
        line_height = <optimized out>
        start = 0
        num_lines = <optimized out>
        hiscores = "\000\000\000\000\001\000\000\000\240\367\337R\246u\000\000\320z\237O\211_\000\000\274\b", '\000' <repeats 16 times>, "\001\000\000\000\000\000 \032\237O\211_", '\000' <repeats 62 times>, "\030\000P\000\030\000\000\000\000\000\000\000PU\234O\211_\000\000\260\203\237O\211_\000\000P\235\234O\211_\000\000\200\205DO\211_\000\000\000\000\000\000\000\000\000\000\001\000\000\000g", '\000' <repeats 27 times>...
        scroller = <optimized out>
        hiscores_txt = <error reading variable: Cannot access memory at address 0x2f>
        mc = {m_previous_mode = MOUSE_MODE_NORMAL}
        goodbye_txt = std::shared_ptr<ui::Text> (empty) = {get() = 0x75a6533f2630 <cur_term>}
        popup = std::shared_ptr<ui::Popup> (use count 1210107011, weak count -2079342460) = {get() = 0x17}
        done = false
#24 0x00005f894d4615c2 in ouch (dam=<optimized out>, dam@entry=5, death_type=<optimized out>, death_type@entry=KILLED_BY_ACID, source=<optimized out>, aux=<optimized out>, see_source=<optimized out>, death_source_name=death_source_name@entry=0x7ffcd20a60e0 "") at ouch.cc:1291
        drain_amount = 0
        hpl = {hp = 5, hurt_type = 27}
        non_death = <optimized out>
        env_death = <optimized out>
        se = {raw_line = "", version = "0.32.1", save_rcs_version = "Git:0.32.1-6-ge8736a44df", save_tag_version = "34.282", tiles = 1 '\001', points = 2, name = "Dragmonsaur", race = 40, job = 29, race_class_name = "AtDe", lvl = 1 '\001', best_skill = SK_STEALTH, best_skill_lvl = 5 '\005', title = "Sneak", death_type = 27, death_source = 196, death_source_name = "a jelly", death_source_flags = std::set with 0 elements, auxkilldata = "", indirectkiller = "a jelly", killerpath = "", last_banisher = "", dlvl = 5 '\005', absdepth = 5, branch = BRANCH_DUNGEON, map = "", mapdesc = "", killer_map = "", final_hp = -1, final_max_hp = 18, final_max_max_hp = 18, final_mp = 1, final_max_mp = 1, final_base_max_mp = 1, damage = 5, source_damage = 5, turn_damage = 5, str = 17, intel = 10, dex = 11, ac = 4, ev = 8, sh = 0, god = GOD_NO_GOD, piety = -1, penance = -1, wiz_mode = 0 '\000', explore_mode = 0 '\000', birth_time = 1741683891, death_time = 1741684033, real_time = 68, num_turns = 90, num_aut = 915, num_diff_runes = 0, num_runes = 0, gems_found = 0, gems_intact = 0, kills = 1, maxed_skills = "", fifteen_skills = "", status_effects = "", gold = 14, gold_found = 14, gold_spent = 0, zigs = 0, zigmax = 0, scrolls_used = 2, potions_used = 0, seed = "1259440328521885209", fields = std::unique_ptr<xlog_fields> = {get() = 0x0}}
#25 0x00005f894d491599 in player::hurt (this=this@entry=0x5f894dc76e80 <you>, agent=0x5f894dcf4aa0 <env+260672>, amount=5, flavour=flavour@entry=BEAM_ACID, kill_type=kill_type@entry=KILLED_BY_ACID, source="", aux="") at /usr/include/c++/13/bits/basic_string.h:222
No locals.
#26 0x00005f894d2fb4c4 in melee_attack::attacker_sustain_passive_damage (this=this@entry=0x7ffcd20a6330) at melee-attack.cc:2665
        acid_strength = 5
        avatar = <optimized out>
#27 0x00005f894d306d78 in melee_attack::attack (this=0x7ffcd20a6330) at melee-attack.cc:1343
        cont = <optimized out>
        saved_gyre_name = ""
        _gensym_uw_1252 = {cleaner = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x7ffcd20a6180, _M_const_object = 0x7ffcd20a6180, _M_function_pointer = 0x7ffcd20a6180, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x7ffcd20a6180, this adjustment 140723832382256}, _M_pod_data = "\200a\n\322\374\177\000\0000c\n\322\374\177\000"}, _M_manager = 0x5f894d2f81d0 <std::_Function_handler<void(), melee_attack::attack()::<lambda()> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x5f894d2f7f10 <std::_Function_handler<void(), melee_attack::attack()::<lambda()> >::_M_invoke(const std::_Any_data &)>}}
        ev = <optimized out>
        shield_blocked = <optimized out>
        conducts = {{conduct = NUM_CONDUCTS, pgain = 0, known = true, victim = std::unique_ptr<monster> = {get() = 0x0}, did_sanctuary = false}, {conduct = NUM_CONDUCTS, pgain = 0, known = true, victim = std::unique_ptr<monster> = {get() = 0x0}, did_sanctuary = false}, {conduct = NUM_CONDUCTS, pgain = 0, known = true, victim = std::unique_ptr<monster> = {get() = 0x0}, did_sanctuary = false}}
#28 0x00005f894d0c61d3 in fight_melee (attacker=attacker@entry=0x5f894dc76e80 <you>, defender=defender@entry=0x5f894dcf4aa0 <env+260672>, did_hit=did_hit@entry=0x0, simu=simu@entry=false) at fight.cc:447
        attk = {<attack> = {_vptr.attack = 0x5f894da876d8 <vtable for melee_attack+16>, attacker = 0x5f894dc76e80 <you>, defender = 0x5f894dcf4aa0 <env+260672>, responsible = 0x5f894dc76e80 <you>, attack_occurred = true, cancel_attack = false, did_hit = true, needs_message = true, attacker_visible = true, defender_visible = true, perceived_attack = true, obvious_effect = false, to_hit = 14, damage_done = 7, special_damage = 0, aux_damage = 0, special_damage_flavour = BEAM_NONE, stab_attempt = false, stab_bonus = 0, ev_margin = 12, attk_type = AT_HIT, attk_flavour = AF_PLAIN, attk_damage = 5, weapon = 0x5f894dc78270 <you+5104>, damage_brand = SPWPN_NORMAL, wpn_skill = SK_LONG_BLADES, art_props = {mData = {0 <repeats 64 times>}}, unrand_entry = 0x0, attacker_to_hit_penalty = 0, attack_verb = "slash", verb_degree = "", no_damage_message = "", special_damage_message = "", aux_attack = "", aux_verb = "", defender_shield = 0x0, simu = false, aux_source = "", kill_type = KILLED_BY_MONSTER}, attack_number = 0, effective_attack_number = 0, cleave_targets = empty std::__cxx11::list, cleaving = false, is_multihit = false, is_riposte = false, is_projected = false, charge_pow = 0, never_cleave = false, wu_jian_attack = WU_JIAN_ATTACK_NONE, wu_jian_number_of_targets = 1, attack_position = {x = 37, y = 38}, mutable_wpn = 0x5f894dc78270 <you+5104>, damage_type = DVORP_SLICING, is_shadow_stab = false}
        success = <optimized out>
        nrounds = <optimized out>
        pos = <optimized out>
        effective_attack_number = <optimized out>
        attack_number = <optimized out>
#29 0x00005f894d41ffba in move_player_action (move=...) at movement.cc:1032
        attacking = false
        moving = true
        swap = false
        initial_position = {x = 37, y = 38}
        rampaged = false
        did_wu_jian_attack = false
        targ = {x = 36, y = 38}
        walkverb = "walk"
        targ_monst = 0x5f894dcf4aa0 <env+260672>
        targ_pass = true
        try_to_swap = false
        beholder = 0x0
        fmonger = 0x0
        mon_swap_dest = {x = 0, y = 0}
        running = <optimized out>
        dug = <optimized out>
#30 0x00005f894d720014 in _handle_cell_click (force=false, button=<optimized out>, gc=...) at tileweb.cc:400
        c = 2002
#31 TilesFramework::_handle_control_message (this=this@entry=0x5f894dc2be20 <tiles>, addr=..., data="{\"x\":3,\"y\":-13,\"button\":1,\"msg\":\"click_cell\"}") at tileweb.cc:532
        y = <optimized out>
        button = <optimized out>
        force = {node = 0x0}
        gc = {x = 34, y = 38}
        x = <optimized out>
        obj = <optimized out>
        msg = <optimized out>
        msgtype = "click_cell"
        c = 0
#32 0x00005f894d720608 in TilesFramework::_receive_control_message (this=this@entry=0x5f894dc2be20 <tiles>) at tileweb.cc:357
        buf = "{\"x\":3,\"y\":-13,\"button\":1,\"msg\":\"click_cell\"}_\000\000\207o\n\322\374\177\000\000\210o\n\322\374\177\000\000\000\000\000\000\000\000\000\000\001", '\000' <repeats 11 times>, "\002\000\000\000\vptM\211_\000\000\vptM\211_\000\000\002\000\000\000\000\000\000\000\377\377\377\377\377\377\377\377B\v\000\000\211_\000\000\240p\n\322\374\177\000\000\322U\306R\246u\000\000\000\000\000\000\000\000\000\000\020\000\000\0000\000\000\000`y\n\322\374\177\000\000\220x\n\322\374\177\000\000\002\000\000\000\000\000\000\000\260p\n\322\374\177\000\000\002\000\000\000\000\000\000\000"...
        srcaddr = {sun_family = 1, sun_path = "/tmp/crawl0jh_n01f.socket", '\000' <repeats 82 times>}
        srcaddr_len = 28
        len = <optimized out>
        data = "{\"x\":3,\"y\":-13,\"button\":1,\"msg\":\"click_cell\"}"
#33 0x00005f894d720b1a in TilesFramework::await_input (this=this@entry=0x5f894dc2be20 <tiles>, c=@0x7ffcd20a7bf0: 1329532680, block=block@entry=true) at tileweb.cc:650
        result = <optimized out>
        fds = {fds_bits = {8, 0 <repeats 15 times>}}
        maxfd = 3
        __d = <optimized out>
        __d = <optimized out>
#34 0x00005f894d724121 in _get_key_from_curses () at libunix.cc:528
        c = 1329532680
        c = <optimized out>
        c = <optimized out>
#35 getch_ck () at libunix.cc:616
        c = <optimized out>
#36 0x00005f894d2a0045 in _getch_mul () at macro.cc:841
        keys = std::deque with 0 elements
        a = 0
#37 0x00005f894d2a3df0 in getch_with_command_macros () at macro.cc:900
        keys = std::deque with 0 elements
#38 0x00005f894d731374 in _get_next_keycode () at main.cc:2754
        keyin = <optimized out>
        mc = {m_previous_mode = MOUSE_MODE_NORMAL}
        keyin = <optimized out>
        mc = <optimized out>
#39 _get_next_cmd () at main.cc:2708
        keyin = <optimized out>
        keyin = <optimized out>
#40 _input () at main.cc:1235
        cmd = <optimized out>
        real_prev_cmd = <optimized out>
        player_disabled = {was_disabled = false}
#41 0x00005f894d731d55 in _launch_game () at main.cc:493
        game_start = <optimized out>
        ccon = {cstate = false}
#42 0x00005f894cf01077 in _launch_game_loop () at main.cc:392
        game_ended = false
        game_ended = <optimized out>
        ge = <optimized out>
        fe = <optimized out>
        E =