aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorDiva Canto2013-07-28 18:49:10 -0700
committerDiva Canto2013-07-28 18:49:10 -0700
commit1d4bf06fe7731f4ca3d8f27a38d64f67d222c6af (patch)
tree555ffeea7e5a41e27306e09e08156888714210f6 /OpenSim
parentChanging the visibility test in groups service to be UUID.Zero.ToString() ins... (diff)
downloadopensim-SC_OLD-1d4bf06fe7731f4ca3d8f27a38d64f67d222c6af.zip
opensim-SC_OLD-1d4bf06fe7731f4ca3d8f27a38d64f67d222c6af.tar.gz
opensim-SC_OLD-1d4bf06fe7731f4ca3d8f27a38d64f67d222c6af.tar.bz2
opensim-SC_OLD-1d4bf06fe7731f4ca3d8f27a38d64f67d222c6af.tar.xz
Group chat: guard against duplicate sends
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Addons/Groups/GroupsMessagingModule.cs9
1 files changed, 5 insertions, 4 deletions
diff --git a/OpenSim/Addons/Groups/GroupsMessagingModule.cs b/OpenSim/Addons/Groups/GroupsMessagingModule.cs
index cd45432..83d296e 100644
--- a/OpenSim/Addons/Groups/GroupsMessagingModule.cs
+++ b/OpenSim/Addons/Groups/GroupsMessagingModule.cs
@@ -297,6 +297,10 @@ namespace OpenSim.Groups
297 if (member.AgentID.Guid == im.fromAgentID) 297 if (member.AgentID.Guid == im.fromAgentID)
298 continue; 298 continue;
299 299
300 if (clientsAlreadySent.Contains(member.AgentID))
301 continue;
302 clientsAlreadySent.Add(member.AgentID);
303
300 if (hasAgentDroppedGroupChatSession(member.AgentID.ToString(), groupID)) 304 if (hasAgentDroppedGroupChatSession(member.AgentID.ToString(), groupID))
301 { 305 {
302 // Don't deliver messages to people who have dropped this session 306 // Don't deliver messages to people who have dropped this session
@@ -336,12 +340,9 @@ namespace OpenSim.Groups
336 // Deliver locally, directly 340 // Deliver locally, directly
337 if (m_debugEnabled) m_log.DebugFormat("[Groups.Messaging]: Passing to ProcessMessageFromGroupSession to deliver to {0} locally", client.Name); 341 if (m_debugEnabled) m_log.DebugFormat("[Groups.Messaging]: Passing to ProcessMessageFromGroupSession to deliver to {0} locally", client.Name);
338 342
339 if (clientsAlreadySent.Contains(member.AgentID))
340 continue;
341 clientsAlreadySent.Add(member.AgentID);
342
343 ProcessMessageFromGroupSession(im); 343 ProcessMessageFromGroupSession(im);
344 } 344 }
345
345 } 346 }
346 347
347 if (m_debugEnabled) 348 if (m_debugEnabled)