Getting crashes on loading saved game--fails when scanning loaded trap data, which appears hopelessly corrupt.
Bugs and complaints on current master
Collapse
X
-
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 FilesOne for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.Comment
-
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.Comment
-
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.
Do you know what the monster was - a mimic maybe?One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.Comment
-
Uh oh. Mystery free memory access:
warning: HEAP: Free Heap block 07B47D00 modified at 07B47D28 after it was freed
where
#0 0x778d06f8 in ?? ()
#1 0x77835c95 in ?? ()
#2 0x77835b32 in ?? ()
#3 0x778cf136 in ?? ()
#4 0x778381c6 in ?? ()
#5 0x77835c95 in ?? ()
#6 0x77835b32 in ?? ()
#7 0x74bc79b0 in msvcrt!malloc () from C:\WINDOWS\SysWoW64\msvcrt.dll
#8 0x004b554b in mem_alloc (len=len@entry=196) at z-virt.c:41
#9 0x004b55b1 in mem_zalloc (len=196) at z-virt.c:54
#10 0x0049380d in display_map (cy=cy@entry=0x0, cx=cx@entry=0x0)
at ui-map.c:656
#11 0x00487b8c in update_minimap_subwindow (type=EVENT_END, data=0x0,
user=0x5313d0 <minimap_data+48>) at ui-display.c:1683
#12 0x00414469 in game_event_dispatch (data=0x0, type=EVENT_END)
at game-event.c:43
#13 event_signal (type=EVENT_END) at game-event.c:142
#14 0x0046ad17 in redraw_stuff (p=0x37) at player-calcs.c:2463
#15 0x004149a4 in process_player_cleanup () at game-world.c:597Comment
-
You can detect these errors by running in verbose mode with -g -O2 compiler flags. This forces the debug memory management and allows good stack traces, but it still runs plenty fast. I hit crashes about every 5 levels playing this way...and that's a good thing. Thanks for fixing the nightmarish trap bug on restore. Lost a save file completely to that.Comment
-
obj->ego = &e_info[lookup_ego_item(buf, obj->tval, obj->sval)];
If lookup_ego_item() fails for any reason, it returns -1, which would do a memory access error. Would be better for lookup_ego_item() to return a struct ego_item * directly (NULL if the function fails).
Same goes for lookup_artifact_name().PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!Comment
-
obj->ego = &e_info[lookup_ego_item(buf, obj->tval, obj->sval)];
If lookup_ego_item() fails for any reason, it returns -1, which would do a memory access error. Would be better for lookup_ego_item() to return a struct ego_item * directly (NULL if the function fails).
Same goes for lookup_artifact_name().One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.Comment
-
New traps don't have tile mappings in the graf-XXX.prf files. I think this leaves them as a small ASCII symbol within a big black square.PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!Comment
-
Indeed, and one of the things I needed to do in the lead up to 4.1 was talk to the currently available tile artists about producing new tiles. Old ones could probably be re-purposed for traps, but it's possible there will be some new monstersOne for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.Comment
-
Code:rd_string(buf, sizeof(buf)); if (buf[0]) {
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.Comment
Comment