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