Files
nethack/doc
PatR e9f1e03271 fix some of #H7156 - perm_invent issues
> [1. perm_invent is kept in flags so persists across save/restore, but
>  perm_invent capability can change if player restores with a different
>  interface--or same one running on a different-sized display--so it
>  ought to be in iflags instead.]

Not addressed here.

> 2. perm_invent window does not get updated when charging a wand (or
> other chargeable item presumably), with a scroll of charging.

Most scrolls rely on useup() -> update_inventory(), but charging uses up
the scroll early so that it will be gone from inventory when choosing an
item to charge.  It needed an explicit update_inventory() after charging.

> 3. update_inventory(), is called from setworn(), which is called from
> dorestore(), when loading a save.  Segfaults have been observed in
> variants based on this code (though not yet in vanilla 3.6.1), so it's
> possible this may be unsafe.  The update_inventory() call in setworn()
> could be protected with "if (!restoring) ..."

tty doesn't support perm_invent, so this might be a win32 issue.
I've made the suggested change, but a better fix would be to turn off
perm_invent as soon as options processing (new game) or options restore
(old game unless/until #1 gets changed) has finished setting things up,
then turn it back on at the end of moveloop()'s prolog when play is
about to start.

 = =

Most of the read.c change is reordering prototypes to match the order
of the corresponding functions.  I did this when adding a new static
routine, then ended up discarding that routine.
2018-05-19 04:19:18 -07:00
..
2018-04-25 16:54:50 -04:00
2018-04-14 19:01:15 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2002-01-11 18:02:22 +00:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2003-05-11 13:40:01 +00:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-05-16 23:06:44 -04:00
2018-05-17 03:42:38 +00:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2018-04-25 16:54:50 -04:00
2010-05-01 23:10:22 +00:00
2018-04-25 16:54:50 -04:00
2018-02-23 19:50:28 -05:00
2018-04-25 16:54:50 -04:00
2018-04-15 16:41:42 -07:00
2017-09-26 10:04:25 +03:00