diff options
Diffstat (limited to 'OpenSim/Addons')
-rw-r--r-- | OpenSim/Addons/Groups/GroupsMessagingModule.cs | 9 |
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) |