ERROR in 'prompt.cc' at line 387: slot not a letter: null (0) Version: Dungeon Crawl Stone Soup 0.34-a0-377-g2aa8828f32 Platform: unix Bits: 64 Game mode: normal Tiles: online Seed: 5426586331042495768, deterministic pregen: 1 Command line: /usr/games/crawl-git-2aa8828f32 -name jesper -rc /dgldir/rcfiles/crawl-git/jesper.rc -macro /dgldir/rcfiles/crawl-git/jesper.macro -morgue /dgldir/morgue/jesper/ -webtiles-socket /crawl-master/webserver/sockets/jesper:2025-07-17.19:43:44.sock -await-connection RC options: restart_after_game = false Crash caused by signal #6: Aborted Obtained 23 stack frames. /usr/games/crawl-git-2aa8828f32(_Z17write_stack_traceP8_IO_FILE+0x3e) [0x5d397a41bb0e]: write_stack_trace(_IO_FILE*) /usr/games/crawl-git-2aa8828f32(_Z13do_crash_dumpv+0x43a) [0x5d397a429bca]: do_crash_dump() /usr/games/crawl-git-2aa8828f32(_Z20crash_signal_handleri+0x1fa) [0x5d397a41bfea]: crash_signal_handler(int) /lib/x86_64-linux-gnu/libc.so.6(+0x45330) [0x797ec26a6330]: /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11c) [0x797ec26ffb2c]: /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x1e) [0x797ec26a627e]: /usr/games/crawl-git-2aa8828f32(+0x4e4f9d) [0x5d397a428f9d]: /usr/games/crawl-git-2aa8828f32(_Z3diePKciS0_z+0x166) [0x5d397a429616]: die(char const*, int, char const*, ...) /usr/games/crawl-git-2aa8828f32(_Z15letter_to_indexi+0x85) [0x5d397a937685]: letter_to_index(int) /usr/games/crawl-git-2aa8828f32(+0x6e414d) [0x5d397a62814d]: /usr/games/crawl-git-2aa8828f32(_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPP8InvEntrySt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterI21menu_entry_comparatorEEEvT_SD_T0_+0xd8) [0x5d397a633978]: void std::__insertion_sort<__gnu_cxx::__normal_iterator > >, __gnu_cxx::__ops::_Iter_comp_iter >(__gnu_cxx::__normal_iterator > >, __gnu_cxx::__normal_iterator > >, __gnu_cxx::__ops::_Iter_comp_iter) /usr/games/crawl-git-2aa8828f32(_ZN7InvMenu10load_itemsERKSt6vectorIPK8item_defSaIS3_EESt8functionIFP9MenuEntrySA_EE11menu_letterbb+0x82d) [0x5d397a62fabd]: InvMenu::load_items(std::vector > const&, std::function, menu_letter, bool, bool) /usr/games/crawl-git-2aa8828f32(_ZN11UseItemMenu13populate_menuEv+0x411) [0x5d397a63be71]: UseItemMenu::populate_menu() /usr/games/crawl-git-2aa8828f32(_ZN11UseItemMenu5resetE15operation_typesPKc+0x128) [0x5d397a63c7b8]: UseItemMenu::reset(operation_types, char const*) /usr/games/crawl-git-2aa8828f32(_ZN11UseItemMenuC1E15operation_typesiPKc+0x133) [0x5d397a63ca63]: UseItemMenu::UseItemMenu(operation_types, int, char const*) /usr/games/crawl-git-2aa8828f32(_Z16use_an_item_menuRP8item_def15operation_typesiPKcSt8functionIFbvEE+0x40) [0x5d397a63cae0]: use_an_item_menu(item_def*&, operation_types, int, char const*, std::function) /usr/games/crawl-git-2aa8828f32(_Z11use_an_item15operation_typesP8item_def+0x2ca) [0x5d397a64231a]: use_an_item(operation_types, item_def*) /usr/games/crawl-git-2aa8828f32(+0xc8114a) [0x5d397abc514a]: /usr/games/crawl-git-2aa8828f32(+0xc81cd5) [0x5d397abc5cd5]: /usr/games/crawl-git-2aa8828f32(main+0x1f7) [0x5d397a350b97]: /lib/x86_64-linux-gnu/libc.so.6(+0x2a1ca) [0x797ec268b1ca]: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x8b) [0x797ec268b28b]: /usr/games/crawl-git-2aa8828f32(_start+0x25) [0x5d397a351685]: Trying to run gdb. GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git Copyright (C) 2024 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later 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: . Find the GDB manual and other documentation resources online at: . 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". 0x0000797ec27717a7 in __GI___wait4 (pid=6960, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 #0 0x0000797ec27717a7 in __GI___wait4 (pid=6960, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 sc_ret = -512 sc_ret = #1 0x00005d397a41c1bc in call_gdb (file=0x797ec28654e0 <_IO_2_1_stderr_>) at crash.cc:438 gdb = attach_cmd = "attach 6936\000\000\000\000\000\000\000\000" #2 0x00005d397a429be8 in do_crash_dump () at dbg-asrt.cc:673 t = 1752781449 dir = "/dgldir/morgue/jesper/" name = "/dgldir/morgue/jesper/crash-jesper-20250717-194409.txt", '\000' signal_info = "Crash caused by signal #6: Aborted" cause_msg = "ERROR in 'prompt.cc' at line 387: slot not a letter: null (0)" file = 0x797ec28654e0 <_IO_2_1_stderr_> #3 0x00005d397a41bfea in crash_signal_handler (sig_num=6) at crash.cc:198 No locals. #4 No locals. #5 __pthread_kill_implementation (no_tid=0, signo=6, threadid=) at ./nptl/pthread_kill.c:44 tid = ret = 0 pd = old_mask = {__val = {0}} ret = pd = old_mask = ret = tid = ret = resultvar = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = __private = __oldval = #6 __pthread_kill_internal (signo=6, threadid=) at ./nptl/pthread_kill.c:78 No locals. #7 __GI___pthread_kill (threadid=, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 No locals. #8 0x0000797ec26a627e in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26 ret = #9 0x00005d397a428f9d in _BreakStrToDebugger (mesg=mesg@entry=0x7ffefd4bef30 "ERROR in 'prompt.cc' at line 387: slot not a letter: null (0)", assert=false) at dbg-asrt.cc:799 No locals. #10 0x00005d397a429616 in die (file=file@entry=0x5d397ac02235 "prompt.cc", line=line@entry=387, format=format@entry=0x5d397ac02260 "slot not a letter: %s (%d)") at dbg-asrt.cc:859 tmp = "slot not a letter: null (0)", '\000' mesg = "ERROR in 'prompt.cc' at line 387: slot not a letter: null (0)", '\000' args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7ffefd4bf830, reg_save_area = 0x7ffefd4bf750}} #11 0x00005d397a937685 in letter_to_index (the_letter=0) at prompt.cc:387 No locals. #12 0x00005d397a62814d in sort_item_slot (a=) at invent.cc:786 No locals. #13 compare_item_fn (a=, b=0x5d399ca3a640) at invent.cc:750 No locals. #14 0x00005d397a633978 in item_comparator::compare (this=0x5d399c8f8d70, b=, a=) at /home/crawl-dev/dgamelaunch-config/crawl-build/crawl-git-repository/crawl-ref/source/externs.h:297 No locals. #15 _compare_invmenu_items (cmps=, b=0x5d399ca3a640, a=0x5d399ca3ce30) at invent.cc:822 cmp = comparator = @0x5d399c8f8d70: {cmpfn = 0x5d397a628130 (InvEntry const*, InvEntry const*)>, negated = false} __for_range = __for_begin = __for_end = #16 menu_entry_comparator::operator() (this=, b=, a=0x5d399ca3ce30) at invent.cc:842 ia = 0x5d399ca3ce30 ib = 0x5d399ca3a640 ia = ib = #17 __gnu_cxx::__ops::_Iter_comp_iter::operator()<__gnu_cxx::__normal_iterator > >, __gnu_cxx::__normal_iterator > > > (__it2=0x5d399ca3a640, __it1=0x5d399ca3ce30, this=) at /usr/include/c++/13/bits/predefined_ops.h:158 No locals. #18 std::__insertion_sort<__gnu_cxx::__normal_iterator > >, __gnu_cxx::__ops::_Iter_comp_iter > (__first=..., __last=..., __last@entry=0x20, __comp=__comp@entry=...) at /usr/include/c++/13/bits/stl_algo.h:1819 __i = 0x5d399ca3ce30 #19 0x00005d397a62f288 in std::__final_insertion_sort<__gnu_cxx::__normal_iterator > >, __gnu_cxx::__ops::_Iter_comp_iter > (__comp=..., __last=..., __first=...) at /usr/include/c++/13/bits/stl_algo.h:1864 No locals. #20 0x00005d397a62fabd in InvMenu::load_items(std::vector > const&, std::function, menu_letter, bool, bool) (this=this@entry=0x7ffefd4bfcc0, mitems=std::vector of length 2, capacity 2 = {...}, procfn=..., ckey=..., ckey@entry=..., sort=sort@entry=true, subkeys=, subkeys@entry=false) at invent.cc:1018 i = subtitle = "Hand Weapons" forced_first = 0x0 obj = inv_class = {mData = {2, 0 }} items_in_class = std::vector of length 2, capacity 2 = {0x5d399ca3a640, 0x5d399ca3ce30} cond = select_all = "" #21 0x00005d397a63be71 in UseItemMenu::populate_menu (this=0x7ffefd4bfcc0) at item-use.cc:508 use_category_selection = true #22 0x00005d397a63c7b8 in UseItemMenu::reset (this=this@entry=0x7ffefd4bfcc0, _oper=, prompt_override=prompt_override@entry=0x0) at item-use.cc:349 No locals. #23 0x00005d397a63ca63 in UseItemMenu::UseItemMenu (this=0x7ffefd4bfcc0, _oper=, item_type=, prompt=0x0) at item-use.cc:371 Compilation info: <<<<<<<<<<< Compiled with GCC 13.3.0 Build platform: x86_64-linux-gnu Platform: x86_64-linux-gnu CFLAGS: -O2 -pipe -DUSE_TILE -DUSE_TILE_WEB -Wall -Wformat-security -Wundef -Wextra -Wno-missing-field-initializers -Wno-implicit-fallthrough -Wno-type-limits -Wno-uninitialized -Wno-array-bounds -Wno-format-zero-length -Wmissing-declarations -Wredundant-decls -Wno-parentheses -Wwrite-strings -Wshadow -pedantic -Wuninitialized -Iutil -I. -isystem /usr/include/lua5.1 -g -DWIZARD -DASSERTS -DREGEX_PCRE -DCLUA_BINDINGS -DDGAMELAUNCH -DSAVE_DIR_PATH="/crawl-master/crawl-git-2aa8828f32/saves" -DSHARED_DIR_PATH="/crawl-master/crawl-git/saves" -DDATA_DIR_PATH="/crawl-master/crawl-git-2aa8828f32/data/" -DWEB_DIR_PATH="/crawl-master/crawl-git-2aa8828f32/data/web/" -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 LDFLAGS: -rdynamic -fuse-ld=gold -O2 >>>>>>>>>>> Place info: branch = 0, depth = 1 Level id: D:1 Level build method = random_map_for_place, level layout type = corridors, absdepth0 = 0 Level vaults: wander_arrival_estate layout_loops_ring chequers_serial_rivers_marsh minmay_tromino_v4_c Markers: <<<<<<<<<<<<<<<<<<<<<< Marker #0, type 0 at (23, 28): feature (stone_stairs_up_i) >>>>>>>>>>>>>>>>>>>>>> Messages: <<<<<<<<<<<<<<<<<<<<<< a -> t - a scroll of teleportation Bad channel name 'Jiyva says' for runrest: 'Jiyva says: Divide and consume' Welcome, jesper the Human Wanderer. The glorious Orb of Zot lies far below, as if waiting for you to find it. Press ? for a list of commands and other information. Found a staircase leading out of the dungeon. You begin with the following items: a +0 dagger, a +0 pair of gloves, a +0 robe, a +2 buckler, a scroll of teleportation; and the following spell memorised: Apportation; and the following spells available to memorise: Teleport Other. Okay, then. Casting: Apportation (safe; 28% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Okay, then. You open the gate. There is an open gate here. You now have 3 gold pieces. A kobold comes into view. It is wielding a +0 short sword. The kobold shouts! A bat comes into view. You block the bat's attack. You miss the bat. The bat completely misses you. You swing at nothing. You block the bat's attack. You hit the bat. The bat is moderately wounded. The bat barely misses you. x2 You hit the bat. You kill the bat! You barely miss the kobold. The kobold hits you with a +0 short sword. You hit the kobold. The kobold is moderately wounded. A kobold comes into view. It is wielding a +0 club. The kobold closely misses you. The kobold shouts! You hit the kobold but do no damage. The kobold is moderately wounded. The kobold hits you with a +0 short sword. You closely miss the kobold. The kobold is moderately wounded. The kobold hits you with a +0 short sword. You barely miss the kobold. The kobold is moderately wounded. The kobold barely misses you. You hit the kobold but do no damage. The kobold is moderately wounded. The kobold completely misses you. You hit the kobold but do no damage. The kobold is moderately wounded. The kobold closely misses you. You hit the kobold. You kill the kobold! You hit the kobold but do no damage. The kobold misses you. The kobold hits you with a +0 club. You closely miss the kobold. The kobold closely misses you. You hit the kobold but do no damage. The kobold closely misses you. You hit the kobold but do no damage. You block the kobold's attack. You hit the kobold. The kobold is heavily wounded. The kobold misses you. You closely miss the kobold. The kobold is heavily wounded. The kobold hits you with a +0 club. You hit the kobold but do no damage. The kobold is heavily wounded. The kobold closely misses you. You closely miss the kobold. The kobold is heavily wounded. The kobold hits you but does no damage. You barely miss the kobold. The kobold is heavily wounded. The kobold hits you with a +0 club. You hit the kobold. The kobold is severely wounded. The kobold closely misses you. You barely miss the kobold. The kobold is severely wounded. The kobold hits you but does no damage. You hit the kobold. You kill the kobold! You start resting. HP restored. Items here: )) †††. >>>>>>>>>>>>>>>>>>>>>> Version history: Game started: 0.34-a0-377-g2aa8828f32 Game state: mouse_enabled: 0, waiting_for_command: 0, terminal_resized: 0 io_inited: 1, need_save: 1, saving_game: 0, updating_scores: 0: seen_hups: 1, map_stat_gen: 0, type: 1, arena_suspended: 0 prev_cmd = CMD_WIELD_WEAPON repeat_cmd = CMD_NO_CMD Player: {{{{{{{{{{{ Name: [jesper] Species: Human Job: Wanderer HP: 13/13; mods: 0/0 MP: 2/2; mod: 0 Stats: 10 12 14 Position: (52, 12), god: No God (0), turn_is_over: 0, banished: 0 Standing on/in/over feature: floor Skills (mode: manual) Name | can_currently_train | train | training | level | points | progress Fighting | X | 0 | 0 | 0 | 0 | 0/50 Short Blades | X | 0 | 0 | 0 | 0 | 0/50 Long Blades | X | 0 | 0 | 0 | 0 | 0/50 Axes | X | 0 | 0 | 0 | 0 | 0/50 Maces & Flails | X | 0 | 0 | 0 | 0 | 0/50 Polearms | X | 0 | 0 | 0 | 0 | 0/50 Staves | X | 0 | 0 | 0 | 0 | 0/50 Ranged Weapons | X | 0 | 0 | 0 | 0 | 0/50 Throwing | X | 0 | 0 | 0 | 0 | 0/50 Armour | X | 1 | 15 | 1 | 54 | 4/100 Dodging | X | 1 | 15 | 2 | 160 | 10/150 Stealth | X | 1 | 14 | 1 | 46 | 4/84 Shields | X | 1 | 14 | 3 | 304 | 4/200 Unarmed Combat | X | 0 | 0 | 0 | 0 | 0/50 Spellcasting | X | 1 | 14 | 1 | 63 | 4/119 Conjurations | X | 0 | 0 | 0 | 0 | 0/50 Hexes | X | 0 | 0 | 0 | 0 | 0/50 Summonings | X | 0 | 0 | 0 | 0 | 0/50 Necromancy | X | 0 | 0 | 0 | 0 | 0/50 Translocations | X | 1 | 14 | 1 | 54 | 4/100 Forgecraft | X | 0 | 0 | 0 | 0 | 0/50 Fire Magic | X | 0 | 0 | 0 | 0 | 0/50 Ice Magic | X | 0 | 0 | 0 | 0 | 0/50 Air Magic | X | 0 | 0 | 0 | 0 | 0/50 Earth Magic | X | 0 | 0 | 0 | 0 | 0/50 Alchemy | X | 0 | 0 | 0 | 0 | 0/50 Invocations | X | 1 | 14 | 1 | 49 | 7/84 Evocations | X | 0 | 0 | 0 | 0 | 0/50 Shapeshifting | X | 0 | 0 | 0 | 0 | 0/59 Spell bugs: Durations: Attributes: #12: 3 #49: 67 Mutations: explore regen: 1 (innate) Inventory bugs: Equipment: eq slot #2, inv slot #3: +2 buckler eq slot #5, inv slot #1: +0 pair of gloves eq slot #3, inv slot #2: +0 robe eq slot #1, inv slot #0: +0 dagger }}}}}}}}}}} Webtiles message buffer: Webtiles JSON stack: Screenshot: ############ ######## ...........#####....... .#########.......# .# #######.# .# #@# .# #.# .# ... .####### ##.## ........ #.# ........ #♣# .####### .## ... clua stack: dlua stack: Lua persistent data: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>> Lua marker contents: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>>