Re: [bug]With class selection

From: Erik Bernhardson (journey@JPS.NET)
Date: 07/19/97


At 10:00 AM 7/19/97 -0600, you wrote:
>On Sat, 19 Jul 1997, Rasdan wrote:
>
>>On Fri, 18 Jul 1997, Erik Bernhardson wrote:
>>
>>> At 08:15 PM 7/18/97 -0600, you wrote:
>>> >Well when i select a class(no matter which class) it crashes the mud.
>>> >Gdb gives me:
>>> >
>>> >Core was generated by `bin/circle -q 5000'.
>>> >Program terminated with signal 11, Segmentation fault.
>>> >Reading symbols from /lib/libc.so.5.3.12...done.
>>> >Reading symbols from /lib/ld-linux.so.1...done.
>>> >#0  0x4004156d in __libc_free ()
>>> >
>>> >And that left me nowhere.  Any help or suggestions would be great.
>>> >Thanks.
>>>
>>> Ok, umm, reading the art of debugging at the circlemud www site might
>>> help:) from what I've learned, type bt to see the stack, then slect the
>>> frame of the last command that makes sense. to load the frame type frame
>>> #x, where x is the frame number, which is told to you by bt.  That should
>>> tell you the exact line number, and file that is causing the crash.
>>>
>>
>>That won't work here, because whenever it's a crash in libc_free, it
>>seems to forget where the function was that caused it. Go figure.
>>
>>I have had this problem, though not in this instance, and it sucks to
>>track it down.
>>
>>For this case, I would suggest looking wherever it is that it writes the
>>new file to the plr_index file (probably interpreter.c calling something
>>in db.c)
>
>since i am using ascii player files, it uses load_char/save_char from
>db.c.  I have some working code from another mud i used to run for
>practice guess i will check that code as well.  btw i have races loaded,
>could that be and hint?
>
>
>
>
>                        -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-
>                        |          Ryan Guthrie         |
>                        |       guthrie@henge.com       |
>                        -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-
>

Since you cant examine the stack with gdb, why not run the program from
inside gdb? load it up with gdb bin/circle.  in it type set args -q 4000(or
whatever args you us) create your char, but send a Ctrl-Z to gdb when you
get to the menu, send the command and step through the code a couple lines
at a time.  I wouldnt suggest doing this on a port other players log onto
though...cuz it will apear that the mud is frozen while you step through it

Erik Bernhardson
Lor, Head Imp at Aceldama
journey@jps.net


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



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