On Sat, 11 Apr 1998, John Evans wrote: >#0 0x807df90 in extract_obj (obj=0x81fc4c0) at handler.c:879 >879 REMOVE_FROM_LIST(obj, object_list, next); >When extracting the second object that is to be extracted since the game >booted, the game crashes. I've compared my extract_obj() and >REMOVE_FROM_LIST against stock code and they are identical, so the cause >of the crash has to be from somewhere outside these sections of code. Start out with a 'p *object_list', then 'p *object_list->next', then '*p object_list->next->next', eventually you will find the problem. Take a note of what the value of the next pointer is, and see if it would make a valid ASCII character string. Sometimes it will, other times it may have been overwritten by simple numbers. >Oh jeez... I hope this makes sense to someone out there because I am >totally missing the cause. There's probably something trashing your list. I once had a problem where the real number of an object (nr, the first field) would be overwritten by a memory access. The result would be a real number in the 10,000 range. So whenever the MUD went into the point_update(), it would crash because the real number was obviously invalid. Perhaps there is something similiar trashing your structures or their values. -- George Greer - Me@Null.net | Genius may have its limitations, but stupidity http://www.van.ml.org/~greerga | is not thus handicapped. -- Elbert Hubbard +------------------------------------------------------------+ | 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