> > #0 0x80b87f6 in str_dup (source=0x0) at utils.c:89 > > #1 0x8094e36 in copy_room_strings (dest=0x4016fb00, source=0x83025b0) at genwld.c:427 > > copy_room_strings() is calling str_dup() with a NULL value (0x0) as > source. str_dup() attempts to dereference its source arg and that will > always cause a seg fault when you attempt to dereference a NULL value. > I'm figuring that it gets freed and nulled out when you do the /c and > then the save attempts to str_dup the result of the edit which crashes > the MUD. Try something like this at line 427 of genwld.c: > > if (source) > str_dup(dest, source); > else > str_dup(dest, "undefined"); > > Regards, Peter This check is already in copy_room_strings: if (dest == NULL || source == NULL) { log("SYSERR: GenOLC: copy_room_strings: NULL values passed."); return FALSE; } dest->description = str_dup(source->description); dest->name = str_dup(source->name); seems like it's not getting checked for some reason. Mark -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/06/01 PST