well, I (unfortunately) found a bug in the code. or one of the players that likes to just sit at the screen and idle out did. and this is a completely different problem from the other one, I do believe this is stock code (i hand-patched in pl12). It happens ONLY if someone idles out and gets force-rented and extracted. it happens in this section of code in close_socket from comm.c if (d->character) { if (STATE(d) == CON_PLAYING || STATE(d) == CON_DISCONNECT) { act("$n has lost $s link.", TRUE, d->character, 0, 0, TO_ROOM); sprintf(buf, "Closing link to: %s.", GET_NAME(d->character)); >>>> mudlog(buf, NRM, MAX(LVL_IMMORT, GET_INVIS_LEV(d->character)), TRUE); save_char(d->character, NOWHERE); d->character->desc = NULL; } else { the mudlog line is the bug, and the problem is the fact that player_specials are freed on the character somewhere before this section of code. I was wondering If maybe I missed a check for CON_DISCONNECT somewhere or something. would someone mind pointing me in the right direction? Thanks. Code On Akuma the Raging Coder +------------------------------------------------------------+ | "The poets talk about love, but what I talk about is DOOM, | | because in the end, DOOM is all that counts." - | | Alex Machine/George Stark/Stephen King, The Dark Half | | "Nothing is IMPOSSIBLE, Just IMPROBABLE" | | "Easier Said Than Done, But Better Done Than Said..." | +------------------------------------------------------------+ +------------------------------------------------------------+ | 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