aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs12
1 files changed, 12 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index d336eda..55e7da4 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -4743,6 +4743,18 @@ namespace OpenSim.Region.Framework.Scenes
4743 4743
4744 if (sp == null) 4744 if (sp == null)
4745 { 4745 {
4746 // If there is no scene presence, we may be handling a dead
4747 // client. These can keep an avatar from reentering a region
4748 // and since they don't get cleaned up they will stick
4749 // around until region restart. So, if there is no SP,
4750 // remove the client as well.
4751 IClientAPI client = null;
4752 if (m_clientManager.TryGetValue(agentID, out client))
4753 {
4754 m_clientManager.Remove(agentID);
4755 m_log.DebugFormat( "[SCENE]: Dead client for agent ID {0} was cleaned up in {1}", agentID, Name);
4756 return true;
4757 }
4746 m_log.DebugFormat( 4758 m_log.DebugFormat(
4747 "[SCENE]: Called CloseClient() with agent ID {0} but no such presence is in {1}", 4759 "[SCENE]: Called CloseClient() with agent ID {0} but no such presence is in {1}",
4748 agentID, Name); 4760 agentID, Name);