Bug in act.obj1.c

jelson@blaze.cs.jhu.edu
Date: 03/06/94


A rather important bug in the Circle code has been brought to my
attention.  Around line 480 of act.obj1.c, you will find the code:

      if (!str_cmp("coins", arg) || !str_cmp("coin", arg))
         perform_drop_gold(ch, amount, mode, RDR);
      else {
	 /* code to drop multiple items.  anyone want to write it? -je */
	 send_to_char("Sorry, you can't do that (yet)...\n\r", ch);
-->      return;
      }
   } else {
....


It should be changed to:


      if (!str_cmp("coins", arg) || !str_cmp("coin", arg))
         perform_drop_gold(ch, amount, mode, RDR);
      else {
	 /* code to drop multiple items.  anyone want to write it? -je */
	 send_to_char("Sorry, you can't do that (yet)...\n\r", ch);
      }
-->   return;
   } else {
....


The only difference is the placement of the 'return' statement.

This will (of course) be fixed in 3.0, but users of the current versions
of Circle should apply the change as well.  This bug is definitely
in 2.20, and possibly in 2.11, but probably not in earlier versions.
If your version of the code does not have the function "perform_drop_gold"
in act.obj1.c, then your code does not have this bug.

Jeremy



This archive was generated by hypermail 2b30 : 12/07/00 PST