From: d. hall (dhall@WARK.OOI.NET)
Date: 06/14/98

>>>>> 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.


     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | |

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