it revived on the same turn that eating the corpse would finish
a wizard's starting equipment was supposed to include a random spellbook of
spell level 1 through 3 but it was being foced to be level 1
+earlier fix for prices of unpaid objects going away in persistent inventory
+ display when hero bought something during itemized billing didn't work
+ if paying for a used-up shop item--prices of any unpaid items vanished
+ when inventory got updated to reflect transfer of hero's gold to shk
curses: 'msg_window' option wasn't functional for curses unless the binary
also included tty support
void
update_inventory(void)
{
+ boolean save_suppress_price;
+
if (suppress_map_output()) /* despite name, used for perm_invent too */
return;
* We currently don't skip this call when iflags.perm_invent is False
* because curses uses that to disable a previous perm_invent window
* (after toggle via 'O'; perhaps the options code should handle that).
+ *
+ * perm_invent might get updated while some code is avoiding price
+ * feedback during obj name formatting for messages. Temporarily
+ * force 'normal' formatting during the perm_invent update. (Cited
+ * example was an update triggered by change in invent gold when
+ * transferring some to shk during itemized billing. A previous fix
+ * attempt in the shop code handled it for unpaid items but not for
+ * paying for used-up shop items; that follows a different code path.)
*/
+ save_suppress_price = iflags.suppress_price;
+ iflags.suppress_price = FALSE;
+
(*windowprocs.win_update_inventory)(0);
+
+ iflags.suppress_price = save_suppress_price;
}
/* the #perminv command - call interface's persistent inventory routine */