On Mon, 3 Dec 2001, Stephen Squires wrote: >>Sounds like your 'object_list' has a loop in it. >> >>Why? Good question. >> > Where would I look for this to fix it? Frozen MUDs imply infinite loops so that's my guess based on what special() does. It could be any number of places or even something unrelated to what you're trying to do. Not something I can remotely debug. It will help to figure out if the line GDB stops on corresponds to the loop through the player's inventory or the room's contents. The line you wrote: "if (GET_OBJ_SPEC(i) != NULL)" shows up in both so I can't say which based on the e-mail. To catch trivial loops: for (i = ch->carrying; i; i = i->next_content) { if (i == i->next_content || i->next_content && i == i->next_content->next_content) abort(); if (GET_OBJ_SPEC(i) != NULL) .... -- George Greer greerga@circlemud.org -- +---------------------------------------------------------------+ | 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 : 06/24/03 PDT