diff options
On closing EQs, make sure to wait for the viewer to fetch the last events.
Diffstat (limited to 'OpenSim/Region/Environment/Modules/Framework')
-rw-r--r-- | OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs b/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs index c5930a0..1a315bc 100644 --- a/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs +++ b/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs | |||
@@ -30,6 +30,7 @@ using System.Collections.Generic; | |||
30 | using System.Net; | 30 | using System.Net; |
31 | using System.Net.Sockets; | 31 | using System.Net.Sockets; |
32 | using System.Reflection; | 32 | using System.Reflection; |
33 | using System.Threading; | ||
33 | using System.Xml; | 34 | using System.Xml; |
34 | using OpenMetaverse; | 35 | using OpenMetaverse; |
35 | using OpenMetaverse.StructuredData; | 36 | using OpenMetaverse.StructuredData; |
@@ -207,6 +208,9 @@ namespace OpenSim.Region.Environment.Modules.Framework | |||
207 | private void ClientClosed(UUID AgentID) | 208 | private void ClientClosed(UUID AgentID) |
208 | { | 209 | { |
209 | m_log.DebugFormat("[EVENTQUEUE]: Closed client {0} in region {1}", AgentID, m_scene.RegionInfo.RegionName); | 210 | m_log.DebugFormat("[EVENTQUEUE]: Closed client {0} in region {1}", AgentID, m_scene.RegionInfo.RegionName); |
211 | while (queues[AgentID].Count() > 0) | ||
212 | Thread.Sleep(1000); | ||
213 | |||
210 | lock (queues) | 214 | lock (queues) |
211 | { | 215 | { |
212 | queues.Remove(AgentID); | 216 | queues.Remove(AgentID); |