Hm. Looks like *dropped was probably OK but (*dropped)->known was probably already freed.
Do you know what the monster was - a mimic maybe?
Bugs and complaints on current master
Collapse
X
-
Another crash from verbose mode object drop code:
[New Thread 8384.0x26a0]
Program received signal SIGSEGV, Segmentation fault.
object_is_ignored (obj=0x31fa494) at obj-ignore.c:584
584 if (obj->known->notice & OBJ_NOTICE_IGNORE)
(gdb) where
#0 object_is_ignored (obj=0x31fa494) at obj-ignore.c:584
#1 0x00459b3a in drop_near (c=0x32514a4, dropped=dropped@entry=0xb0f05c,
chance=chance@entry=0, y=57, x=139, verbose=verbose@entry=true)
at obj-pile.c:957
#2 0x0043c832 in monster_death (mon=mon@entry=0x7aafda8,
It is (again) dereferencing **dropped when that is already deleted/merged.Leave a comment:
-
Attached is a fixed savefile - it is not quite as you saw it last, every trap on the current level is a pit...
I have pushed a build which fixes this problem, it should be up on the nightlies page before too long.Attached FilesLeave a comment:
-
Getting crashes on loading saved game--fails when scanning loaded trap data, which appears hopelessly corrupt.Leave a comment:
-
I'm not sure what happened here....I was playing this character (yesterday) on one mac, moved the save file from the angband save file to my dropbox to play while I traveled, but opening the save file crashes angband.
Any thoughts?Attached FilesLeave a comment:
-
-
-
-
-
And when I try to recover from that one, my @ is in a different location from where it was when I crashed, and I get the following:
Code:Program received signal SIGABRT, Aborted. 0x00007ffff6d7f979 in raise () from /lib64/libc.so.6 (gdb) bt #0 0x00007ffff6d7f979 in raise () from /lib64/libc.so.6 #1 0x00007ffff6d81088 in abort () from /lib64/libc.so.6 #2 0x00007ffff6d78966 in __assert_fail_base () from /lib64/libc.so.6 #3 0x00007ffff6d78a12 in __assert_fail () from /lib64/libc.so.6 #4 0x0000000000407791 in square_istrap (c=0x894fa8, y=19, x=38) at cave-square.c:464 #5 0x000000000049f735 in square_trap_flag (c=0x894fa8, y=19, x=38, flag=3) at trap.c:90 #6 0x00000000004084d5 in square_isvisibletrap (c=0x894fa8, y=19, x=38) at cave-square.c:705 #7 0x00000000004084fd in square_issecrettrap (c=0x894fa8, y=19, x=38) at cave-square.c:712 #8 0x000000000048e31b in search (p=0x9bb9e8) at player-util.c:943 #9 0x0000000000487106 in notice_stuff (p=0x9bb9e8) at player-calcs.c:2278 #10 0x000000000041c094 in on_new_level () at game-world.c:716 #11 0x00000000004ad45a in start_game (new_game=false) at ui-game.c:417 #12 0x00000000004ad475 in play_game (new_game=false) at ui-game.c:426 #13 0x00000000004e583d in main (argc=1, argv=0x7fffffffdc48) at main.c:524 (gdb)
Looking at it more closely, I'm being placed on the permanent wall in a small (labyrinth) level. Going to try to edit my position in the debugger to save the game. Stairs don't work. Loaded into a bad place. If I can get him moved, I'll try to recall and see if that salvages things.
Rogue @ just found an early ESP on a *Slay Animal*. I'd rather not abandon.
EDIT 2:
Ah, this did the trick:
Code:Breakpoint 1, start_game (new_game=false) at ui-game.c:415 (gdb) print character_dungeon $1 = true (gdb) call character_dungeon = 0 $2 = false (gdb) cont Continuing.
Last edited by kandrc; January 6, 2017, 14:58.Leave a comment:
-
Here's another segfault in 4.0.3-603-g81b3e23:
Code:Program received signal SIGSEGV, Segmentation fault. 0x00000000004dd857 in flag_on_dbg (flags=0x411 <Address 0x411 out of bounds>, size=3, flag=1, fi=0x4eb64d "c->squares[y][x].info", fl=0x4eb641 "SQUARE_MARK") at z-bitflag.c:226 226 if (flags[flag_offset] & flag_binary) return false; (gdb) bt #0 0x00000000004dd857 in flag_on_dbg (flags=0x411 <Address 0x411 out of bounds>, size=3, flag=1, fi=0x4eb64d "c->squares[y][x].info", fl=0x4eb641 "SQUARE_MARK") at z-bitflag.c:226 #1 0x00000000004099ad in square_mark (c=0xb19578, y=0, x=55) at cave-square.c:1098 #2 0x0000000000405568 in wiz_light (c=0xbb7a18, full=false) at cave-map.c:446 #3 0x0000000000420cd0 in labyrinth_gen (p=0x9bbc28) at gen-cave.c:887 #4 0x000000000041e2ed in cave_generate (c=0x74b480 <cave>, p=0x9bbc28) at generate.c:864 #5 0x000000000041c476 in run_game_loop () at game-world.c:840 #6 0x00000000004ad48f in play_game (new_game=false) at ui-game.c:433 #7 0x00000000004e583d in main (argc=1, argv=0x7fffffffdc48) at main.c:524 (gdb)
Leave a comment:
-
I hit an infinite loop in scatter(). Specifically, it's never passing the test for square_in_bounds_fully(), as ny is being generated in the range [-2, 0].
Here's some detail. I don't know this code well enough to see what the issue is exactly, but I suspect the parameters coming into scatter() are bad.Leave a comment:
-
I hit an infinite loop in scatter(). Specifically, it's never passing the test for square_in_bounds_fully(), as ny is being generated in the range [-2, 0].
Here's some detail. I don't know this code well enough to see what the issue is exactly, but I suspect the parameters coming into scatter() are bad.
Code:(gdb) bt #0 square_in_bounds_fully (c=0xd9e558, y=-1, x=74) at cave-square.c:764 #1 0x00000000004044db in scatter (c=0xd9e558, yp=0x7fffffffd760, xp=0x7fffffffd75c, y=-1, x=74, d=1, need_los=false) at cave.c:297 #2 0x00000000004301a1 in vault_monsters (c=0xd9e558, y1=-1, x1=74, depth=18, num=1) at gen-util.c:731 #3 0x0000000000429b33 in build_room_template (c=0xd9e558, y0=4, x0=74, ymax=7, xmax=28, doors=1, data=0x9da588 "%%%####%%#%%####%%#%%####%%%%...##...+...##..9+...##...%%##....#####....#####....##% ##..## ##..## ##..## %##....#####....#####....##%%...##...+9..##...+...##...%%%%####%%#%%####%%#%%####%%%", tval=0) at gen-room.c:1009 #4 0x0000000000429df5 in build_room_template_type (c=0xd9e558, y0=56, x0=172, typ=1, rating=1) at gen-room.c:1074 #5 0x000000000042d7c4 in build_template (c=0xd9e558, y0=56, x0=172, rating=1) at gen-room.c:2384 #6 0x000000000042eef7 in room_build (c=0xd9e558, by0=0, bx0=0, profile=..., finds_own_space=true) at gen-room.c:2990 #7 0x0000000000422d08 in modified_chunk (depth=17, height=56, width=172) at gen-cave.c:1688 #8 0x000000000042327c in modified_gen (p=0x9bbbf8) at gen-cave.c:1791 #9 0x000000000041e2ed in cave_generate (c=0x74b480 <cave>, p=0x9bbbf8) at generate.c:864 #10 0x000000000041c476 in run_game_loop () at game-world.c:840 #11 0x00000000004ad48f in play_game (new_game=false) at ui-game.c:433 #12 0x00000000004e583d in main (argc=1, argv=0x7fffffffdc48) at main.c:524 (gdb) print *c $24 = { name = 0x0, created_at = 43089, depth = 17, feeling = 0 '\000', obj_rating = 65, mon_rating = 242, good_item = false, height = 56, width = 172, feeling_squares = 0, feat_count = 0xc6e938, squares = 0xc6ea48, objects = 0xd64db8, obj_max = 127, monsters = 0xda3648, mon_max = 4, mon_cnt = 3, mon_current = -1 } (gdb) up #1 0x00000000004044db in scatter (c=0xd9e558, yp=0x7fffffffd760, xp=0x7fffffffd75c, y=-1, x=74, d=1, need_los=false) at cave.c:297 297 if (!square_in_bounds_fully(c, ny, nx)) continue; (gdb) print y $25 = -1 (gdb) print x $26 = 74 (gdb) print d $27 = 1 (gdb) down #0 square_in_bounds_fully (c=0xd9e558, y=-1, x=74) at cave-square.c:764 764 assert(c); (gdb) list 759 return x >= 0 && x < c->width && y >= 0 && y < c->height; 760 } 761 762 bool square_in_bounds_fully(struct chunk *c, int y, int x) 763 { 764 assert(c); 765 return x > 0 && x < c->width - 1 && y > 0 && y < c->height - 1; 766 } 767 768 (gdb) print *yp No symbol "yp" in current context. (gdb) up #1 0x00000000004044db in scatter (c=0xd9e558, yp=0x7fffffffd760, xp=0x7fffffffd75c, y=-1, x=74, d=1, need_los=false) at cave.c:297 297 if (!square_in_bounds_fully(c, ny, nx)) continue; (gdb) print *yp $28 = 77 (gdb) print *xp $29 = 2 (gdb)
Leave a comment:
-
Not sure is this one should be considered a bug or not, nor am I certain of historical behavior, but staff of sleep monsters wakes sleeping monsters that make the saving throw.Leave a comment:
-
Always available? Unless this has been changed when I wasn't watching, the only always-available scrolls are phase door and word of recall. If mapping scrolls are indeed always available (or we're willing to make them so) then I agree that this is an adequate solution. Otherwise, we probably do need to bring stair detection back.Leave a comment:
Leave a comment: