Re: [MEDIT] Weird Crash

From: Patrick J. Dughi (dughi@IMAXX.NET)
Date: 03/02/98


> >     I create a new zone, edit a first room (tried it without editing the
> > first room), and save it, use redit save (also tried without doing this),
> > and all the other editors work for that zone with no probs.  My problem
> > occurs with medit.  They can edit the mob fine, but when they go to save it
> > internally, mud dies & dumps core.  If I enable DEBUG & I_CRASH, it works
> > fine, they can save and the MUD goes on.  Without I_CRASH, I get this in the
> > syslog:
> >
> > top_of_mobt: 62, new top_of_mobt: 63
> > rmob_num: 63, top_of_mobt: 62, array size: 0-63 (64)
> > Append.
> > Attempted free.
> >
> > And it dies right after that, when it goes to free(mob_proto) etc.  The odd
> > thing is, they can also edit a new mob for a zone that already exists.
> > Here's what I get on my GDB backtrace:
> >
> > (gdb) bt
> > #0  0x4004249d in __libc_free ()
> > #1  0x2f4 in ?? ()
> > #2  0x1 in ?? ()
> > #3  0x7d830855 in ?? ()
> > Cannot access memory at address 0x8be58955.
> >
> > This obviously doesn't help me pinpoint it any more...

        Certainly not, but what it looks like (and keep in mind i'm not
the expert here) is that its attempting to free memory that has already
been freed. What you may wish to do is add a check before your 'free'
statements just to make sure that what you're specifically freeing really
exists like if(mob_proto && *mob_proto) free( mob_proto);
  Haven't the slightest idea how it could be zone related.
                                        PjD


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