guestnukefix
authornveid <nveid@comcast.net>
Thu, 26 Oct 2006 00:17:50 +0000 (00:17 +0000)
committerAri Johnson <ari@nveid.com>
Tue, 12 Sep 2006 12:49:49 +0000 (12:49 +0000)
In the event someone @su'd into a connected guest & disconnected while
someone is still connected to that guest the guest would be destroyed.
(cherry picked from commit 1a6241bacf0623d0f497f1a95c2ecaa29f6c57be)

game/txt/changes/0.72p2
src/bsd.c

index 6ba309570195d9957df749db3209df349779f2de..c79c03eadc226dcb0ca9617c915ca8a3e0a78513 100644 (file)
@@ -19,3 +19,6 @@ CobraMUSH Version 0.72p2
       division_cost. [RLB]
     * Quotas were not being checked properely before a division
       received objects into their division. [RLB]
+    * In the event two descriptors were connected to a Guest, and
+      one disconnected.  Possible through possesing a Guest using @su. 
+      Guest was destroyed even though it was connected. [RLB]
index df85f89dbf9e4a82a2e05ad31f1f6cce6c94ff7c..dd06654417bded4533881e8da601e8ebb5f0c149 100644 (file)
--- a/src/bsd.c
+++ b/src/bsd.c
@@ -3911,7 +3911,7 @@ announce_disconnect(dbref player)
   }
   if (!Dark(player))
     flag_broadcast(0, "MONITOR", "%s %s", T("GAME:"), tbuf1);
-  if(Guest(player))  { /* queue for destruction */
+  if(Guest(player) && !Connected(player))  { /* queue for destruction */
       set_flag_internal(player, "GOING");
       set_flag_internal(player, "GOING_TWICE");
     }