>>>>> thus on Sun, 14 Jun 1998 20:54:30 -0600, Gordon wrote:
> I recently put the clan code snippet into my mud, and have begun to get
> crashes when someone does a ctell:
> Program terminated with signal 11, Segmentation fault.
> #0 0x68fd in do_ctell (ch=0x661c00, argument=0xefbfb93f "wo", cmd=119,
> subcmd=0) at comm.c:2262
> 2262 if (i->character->player_specials->saved.clan == c){
> (gdb) back
> #0 0x68fd in do_ctell (ch=0x661c00, argument=0xefbfb93f "wo", cmd=119,
> subcmd=0) at comm.c:2262
> #1 0xb28 in ?? ()
> #2 0x5e771 in command_interpreter (ch=0x661c00, argument=0xefbfb93c "ct wo")
> at interpreter.c:1052
> #3 0x2818 in game_loop (mother_desc=3) at comm.c:749
> #4 0x1bff in init_game (port=4000) at comm.c:342
> #5 0x1a43 in main (argc=2, argv=0xefbfda20) at comm.c:306
> Most of the time, I can debug just fine with gdb, but I have no idea what the
> 0x68df error is. Any ideas? BTW, I upgraded to bpl13 on my
> pretty-well-modified bpl12, and everything's working better than ever! :)
Best guess for a seg fault, either i->character->player_specials->saved or
i->character->player_specials->saved.clan isn't defined/allocated. Hard to
tell from just the backstrace.
Since you're testing against it in the actual if statement, it may not be
referenced, and you're getting a seg fault.
For further debugging you'll have to list the ctell function.
OTOH, you can just run the mud via gdb, and place a breakpoint on
do_ctell, and manually test the variable.
d.
+------------------------------------------------------------+
| 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/15/00 PST