early-roguelike/arogue5
John "Elwin" Edwards 46568d24a4 arogue5: fix some save/restore-related crashes.
The save/restore code took the pointer intended as an argument for the
doctor() daemon and wrote it to the savefile as an int.  I don't know
why it took so long to fail horribly.  The problem has been avoided by
replacing the value with &player when restoring.  That seems to be the
only argument ever actually used.

The code also writes only four bytes for an unsigned long; if
sizeof(long) == 8, it casts to unsigned int first.  It failed to do the
cast when reading back, with the result that four bytes were read and
the other half of the number was effectively uninitialized.

It apparently works now, but the save/restore code ought still to be
regarded as decidedly unfortunate.
2014-01-06 15:57:17 -05:00
..
acinclude.m4 arogue5: port to autoconf. 2013-08-31 09:18:07 -07:00
arogue58.doc Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
arogue58.html Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
arogue58.sln Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
arogue58.vcproj Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
chase.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
command.c arogue5: port to autoconf. 2013-08-31 09:18:07 -07:00
configure.ac arogue5: port to autoconf. 2013-08-31 09:18:07 -07:00
daemon.c Rename daemon() to start_daemon(). 2013-09-07 08:08:00 -04:00
daemons.c Rename daemon() to start_daemon(). 2013-09-07 08:08:00 -04:00
encumb.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
fight.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
init.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
install-sh arogue5: port to autoconf. 2013-08-31 09:18:07 -07:00
io.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
LICENSE.TXT Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
list.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
mach_dep.h arogue5: port to autoconf. 2013-08-31 09:18:07 -07:00
main.c Rename daemon() to start_daemon(). 2013-09-07 08:08:00 -04:00
Makefile.in Add config.h to the list of headers in the Makefiles. 2013-09-03 14:14:48 -07:00
maze.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
mdport.c arogue5: use configure's checks to find term.h. 2013-09-07 09:43:06 -04:00
misc.c Rename daemon() to start_daemon(). 2013-09-07 08:08:00 -04:00
monsters.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
move.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
network.h Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
new_level.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
options.c arogue5: fix backspace key. 2013-08-28 08:37:56 -07:00
outside.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
pack.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
passages.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
player.c arogue5: make some prayer-related messages appear properly. 2012-09-09 17:58:38 -07:00
potions.c arogue5: make some prayer-related messages appear properly. 2012-09-09 17:58:38 -07:00
rings.c Rename daemon() to start_daemon(). 2013-09-07 08:08:00 -04:00
rip.c arogue5: update the score list before prompting to exit. 2012-08-11 20:58:24 +00:00
rogue.c arogue5: fix the crash when checking prices in shops. 2012-09-05 10:14:34 -07:00
rogue.h arogue5: port to autoconf. 2013-08-31 09:18:07 -07:00
rooms.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
save.c Refuse to restore if the character is dead. 2013-08-09 09:34:07 -07:00
scrolls.c arogue5: fix player's typed responses getting put at the wrong place. 2012-09-08 22:05:05 -07:00
state.c arogue5: fix some save/restore-related crashes. 2014-01-06 15:57:17 -05:00
sticks.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
things.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
trader.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
util.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
vers.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00
weapons.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
wear.c Rename daemon() to start_daemon(). 2013-09-07 08:08:00 -04:00
wizard.c arogue5: add missing header files. 2012-08-11 17:19:03 +00:00
xcrypt.c Import Advanced Rogue 5.8 from the Roguelike Restoration Project (r1490) 2012-08-09 22:58:48 +00:00