Re: 128 bit bug

From: Templar Viper (templarviper@hotmail.com)
Date: 12/04/02


----- Original Message -----
From: "Thomas Larcombe" <raucous@DIM.COM>
To: <CIRCLE@post.queensu.ca>
Sent: Wednesday, December 04, 2002 9:09 PM
Subject: [CIRCLE] 128 bit bug


> In shop.c there is a comparison of GET_OBJ_EXTRA(obj1) and
> GET_OBJ_EXTRA(obj2), this needs to be changed from:
> {in function same_obj()}
>
> if GET_OBJ_EXTRA(obj1) != GET_OBJ_EXTRA(obj2)
> return (FALSE);
>
> it needs to be changed to:
>
> if GET_OBJ_EXTRA(obj1)[0] != GET_OBJ_EXTRA(obj2)[0]
> return (FALSE);

Oops.

I probably overlooked this case, and since the compiler didn't complain
about it (Quite logical), I simply forgot. Here is the fix, probably
shorter:

  int i;

  for (i = 0; i < EF_ARRAY_MAX; i++)
    if (GET_OBJ_EXTRA_AR(obj1, i) != GET_OBJ_EXTRA_AR(obj2, i))
      return (FALSE);

> additional lines need to be added to check for [1], [2] and [3] as well.
> The upshot of not doing this is that items will load with only a
> single item available as opposed to the 'Unlimited' that shop produced
> items are supposed to have, several other minor problems are fixed also
> as other sections also call on the 'same_obj()' function.

I actually heard this problem before, but having no problems in my own
mud (In which I did probably adjust this), I disregared it.
    Anyhow, new version will come out when the new oasisolc is released,
with the bugfix.

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   | Newbie List:  http://groups.yahoo.com/group/circle-newbies/   |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 06/25/03 PDT