Re: More bugs in lastest cvs snapshot

From: George Greer (greerga@circlemud.org)
Date: 03/01/01


Apparently I accidently deleted this the first time around...from the list
archives we go:

Juliano Ravasi Ferraz <jferraz@linkway.com.br> wrote:

>George Greer wrote:
>>
>> Apparently whatever I had that day was really effective.
>
>Ooops... I have found 3 more bugs in lastest snapshot.

Which goes to show why I always go over the changes with a fine-tooth comb
before actually releasing it.

>  500H 100M 82V > goto fountain
>  Connection closed by foreign host.
>
>#0  0x807b19a in get_obj_vis (ch=0x82aa858, name=0xbffff5a8 "fountain",
>    number=0x0) at handler.c:1094

Can you say "dumb bug?" I thought you could...

Index: handler.c
===================================================================
RCS file: /home/circledb/.cvs/circle/src/handler.c,v
retrieving revision 1.22
diff -u -p -r1.22 handler.c
--- handler.c   2001/01/26 02:01:22     1.22
+++ handler.c   2001/03/02 02:34:55
@@ -1091,7 +1091,7 @@ struct obj_data *get_obj_vis(struct char
   if ((i = get_obj_in_list_vis(ch, name, number, world[ch->in_room].contents)) != NULL)
     return (i);

-  if (*number == 0)
+  if (number && *number == 0)
     return (NULL);

   /* ok.. no luck yet. scan the entire obj list   */

If there isn't any number passed, we don't abort early.

>The second bug is due the transport of the code to prevent duping from
>do_quit() to extract_char().  To reproduce, simply try to stat your own
>file:
>
>  500H 100M 82V > stat file mrgod
>  male PC 'MrGod'  IDNum: [    1], In room [    0]
>  Title: the Implementor
>  ...
>  Connection closed by foreign host.
>
>This is because stat file and set file uses extract_char() on an
>non-playing character. The mud does not crash, but it will became
>unstable, because extract_char() changes the conection state from
>CON_PLAYING direct to CON_CLOSE.

Woohoo! NotMyBug(tm). :)

Anyway, he put the brace on the wrong line as well.  I'll defer the fix to
Daniel unless he wants me to do it, since I believe that is his code.

>And finally, the last bug is due a flaw in the new zone command count
>(load_zones:db.c).  It counts all lines on the zon file, including the
>first 3 that are not commands.  If I use, for example, "O Reino dos
>Imortais" (is the same of "Immortal's Realm", but in portuguese
>language), the MUD will interpret as a "O" command, and will die saying
>that "zone command count mismatch".

That one's mine...I'll think of something.  I'll probably have it check for
numbers in the second argument, soon as I check all of the commands to make
sure that's acceptable.

--
George Greer
greerga@circlemud.org

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/04/01 PST