From afe63faa2ee9cbdb8a8e0ee755a4d5ef06fe770b Mon Sep 17 00:00:00 2001
From: Teravus Ovares
Date: Tue, 18 Dec 2007 00:34:42 +0000
Subject: * Fix for mantis 0000040 After client logout remote host closed
connection on Simulator makes sim unuseable->'Closed Connection Called' *
I've fundamentally changed a few things, so this is experimental * The
routine that I used needs to be tested on Linux. I don't expect it to cause
a problem, but hey, it might. * Child agents are still not logged off
properly, so when the first set time out, the second set get logged off also,
on the second log in if the second login is initiated before the first one
fully times out.
---
OpenSim/Region/Environment/Scenes/Scene.cs | 5 +++++
OpenSim/Region/Environment/Scenes/SceneBase.cs | 2 ++
2 files changed, 7 insertions(+)
(limited to 'OpenSim/Region/Environment')
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 1145b00..bfdf517 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -1243,7 +1243,12 @@ namespace OpenSim.Region.Environment.Scenes
// Remove client agent from profile, so new logins will work
CommsManager.UserService.clearUserAgent(agentID);
}
+ public override void CloseAllAgents(uint circuitcode)
+ {
+ // Called by ClientView to kill all circuit codes
+ ClientManager.CloseAllAgents(circuitcode);
+ }
public void NotifyMyCoarseLocationChange()
{
ForEachScenePresence(delegate(ScenePresence presence) { presence.CoarseLocationChange(); });
diff --git a/OpenSim/Region/Environment/Scenes/SceneBase.cs b/OpenSim/Region/Environment/Scenes/SceneBase.cs
index 75118e2..35d88eb 100644
--- a/OpenSim/Region/Environment/Scenes/SceneBase.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneBase.cs
@@ -130,6 +130,8 @@ namespace OpenSim.Region.Environment.Scenes
///
public abstract void RemoveClient(LLUUID agentID);
+ public abstract void CloseAllAgents(uint circuitcode);
+
#endregion
///
--
cgit v1.1