diff --git a/doc/fixes34.4 b/doc/fixes34.4 index 20b795523..5b188749f 100644 --- a/doc/fixes34.4 +++ b/doc/fixes34.4 @@ -106,6 +106,7 @@ fix various places that "finally finished" could be displayed after the hero stopped doing something other than eating fix some cases where movement was disallowed but the hero was still conscious after destroying drawbridge, hero could appear to be in the wall +sometimes shop items which hero is forced to buy could be sold back twice Platform- and/or Interface-Specific Fixes diff --git a/src/mkobj.c b/src/mkobj.c index 619c8ba02..35fd7bccb 100644 --- a/src/mkobj.c +++ b/src/mkobj.c @@ -1,4 +1,4 @@ -/* SCCS Id: @(#)mkobj.c 3.5 2002/10/07 */ +/* SCCS Id: @(#)mkobj.c 3.5 2005/03/26 */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -342,7 +342,9 @@ register struct obj *otmp; (void)strncpy(ONAME(dummy), ONAME(otmp), (int)otmp->onamelth); if (Is_candle(dummy)) dummy->lamplit = 0; addtobill(dummy, FALSE, TRUE, TRUE); - otmp->no_charge = 1; + /* no_charge is only valid for some locations */ + otmp->no_charge = (otmp->where == OBJ_FLOOR || + otmp->where == OBJ_CONTAINED) ? 1 : 0; otmp->unpaid = 0; return; }