Re: [Code] Mobs corrupting in memory

From: Michael Lemler (
Date: 03/30/99

> None known.
> free(mob_proto); usually crashes the MUD immediately on memory problems.
> Yes, that will crash eventually, but if it's immediately on that call that
> usually indicates malloc memory corruption.

It wasn't on free(mob_proto), let me paste some stuff from gdb with some
other information..

#5  0x807e1c9 in command_interpreter (ch=0x8225db0,
    argument=0xbffff9b8 "purge") at interpreter.c:665
-- Builder initiates a purge

#4  0x80687c5 in do_purge (ch=0x8225db0, argument=0xbffff9bd "", cmd=180,
    subcmd=0) at act.wizard.c:1205
-- Passes the Imm who did the purge correctly and since there is no
   argument, it goes to to purge most everything in the room as normal

#3  0x807b438 in extract_char (ch=0x81d56b0) at handler.c:943
943         free_char(ch);
-- It appears to have done everything up to this point correctly.

#2  0x8076e6e in free_char (ch=0x81d56b0) at db.c:2291
2291          free(ch->player.description);
-- Here, I take a look at ch->player.description.  It appears to be fine
   also.  printf "%s",ch->player.description yeilds

Ack!  This rodent is disgusting!  You can hardly choke down your bile as the
rank stench of this rotting thing wafts over you!  It doesn't look friendly
at all, and since its bigger than you are, it might be a good idea to get out
of here!

  Plain ol' print truncates the last bit of it off.

#1  0x4009d36a in free ()
#0  0x4009d4d9 in chunk_free ()

Any other suggestions before I give up on the core and just attempt to
watch the mud as it runs?  It is compiled with glib6 2.1.1, if that helps
(or hinders ;) at all.


--Michael A. Lemler

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

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