diff options
author | Justin Clark-Casey (justincc) | 2012-06-12 02:43:33 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2012-06-12 02:43:33 +0100 |
commit | 1b1f0a2d77fb4d2ac572f16c71a7560860c8c040 (patch) | |
tree | 2e18738453d51b8a551ba5f9ba7a0cada4cff62c /OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/PresenceDetector.cs | |
parent | Set IClientAPI.IsActive = false early on client removal due to ack timeout ra... (diff) | |
download | opensim-SC_OLD-1b1f0a2d77fb4d2ac572f16c71a7560860c8c040.zip opensim-SC_OLD-1b1f0a2d77fb4d2ac572f16c71a7560860c8c040.tar.gz opensim-SC_OLD-1b1f0a2d77fb4d2ac572f16c71a7560860c8c040.tar.bz2 opensim-SC_OLD-1b1f0a2d77fb4d2ac572f16c71a7560860c8c040.tar.xz |
OnConnectionClosed listeners, retrieve data from IClientAPI.SceneAgent rather than scanning all scene for the presence with the right id
Stop checking IsLoggingOut on these listeners, if called with a root agent then we always want to perform these actions.
This covers cases where the client is closed due to manual kick, simulator shutdown, etc.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/PresenceDetector.cs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/PresenceDetector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/PresenceDetector.cs index b43745c..172bea1 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/PresenceDetector.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/PresenceDetector.cs | |||
@@ -79,7 +79,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence | |||
79 | 79 | ||
80 | public void OnConnectionClose(IClientAPI client) | 80 | public void OnConnectionClose(IClientAPI client) |
81 | { | 81 | { |
82 | if (client.IsLoggingOut && !client.SceneAgent.IsChildAgent) | 82 | if (!client.SceneAgent.IsChildAgent) |
83 | { | 83 | { |
84 | // m_log.DebugFormat("[PRESENCE DETECTOR]: Detected client logout {0} in {1}", client.AgentId, client.Scene.RegionInfo.RegionName); | 84 | // m_log.DebugFormat("[PRESENCE DETECTOR]: Detected client logout {0} in {1}", client.AgentId, client.Scene.RegionInfo.RegionName); |
85 | m_PresenceService.LogoutAgent(client.SessionId); | 85 | m_PresenceService.LogoutAgent(client.SessionId); |