diff options
author | Robert Adams | 2016-06-11 12:42:42 -0700 |
---|---|---|
committer | Robert Adams | 2016-06-11 12:42:42 -0700 |
commit | 9ebdae8676f1e48bc1e12af9c28714dff295f8b9 (patch) | |
tree | c78fc4f0b6f25092c2f4186061400073c4e51ee4 /OpenSim/Addons/Groups | |
parent | Mantis #7874: parcel properties not being updated upon avatar entering new pa... (diff) | |
download | opensim-SC_OLD-9ebdae8676f1e48bc1e12af9c28714dff295f8b9.zip opensim-SC_OLD-9ebdae8676f1e48bc1e12af9c28714dff295f8b9.tar.gz opensim-SC_OLD-9ebdae8676f1e48bc1e12af9c28714dff295f8b9.tar.bz2 opensim-SC_OLD-9ebdae8676f1e48bc1e12af9c28714dff295f8b9.tar.xz |
Restore SendAgentGroupDataUpdate() call in GroupsModule.cs.
Restore linkage to OnAgentClosed since the merge solved the reference
problem by looking up the agent.
This should address Mantis 7915 and 7920.
Diffstat (limited to 'OpenSim/Addons/Groups')
-rw-r--r-- | OpenSim/Addons/Groups/GroupsModule.cs | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/OpenSim/Addons/Groups/GroupsModule.cs b/OpenSim/Addons/Groups/GroupsModule.cs index da8c9ea..cdc98f5 100644 --- a/OpenSim/Addons/Groups/GroupsModule.cs +++ b/OpenSim/Addons/Groups/GroupsModule.cs | |||
@@ -179,9 +179,7 @@ namespace OpenSim.Groups | |||
179 | scene.EventManager.OnMakeRootAgent += OnMakeRoot; | 179 | scene.EventManager.OnMakeRootAgent += OnMakeRoot; |
180 | scene.EventManager.OnMakeChildAgent += OnMakeChild; | 180 | scene.EventManager.OnMakeChildAgent += OnMakeChild; |
181 | scene.EventManager.OnIncomingInstantMessage += OnGridInstantMessage; | 181 | scene.EventManager.OnIncomingInstantMessage += OnGridInstantMessage; |
182 | // The InstantMessageModule itself doesn't do this, | 182 | scene.EventManager.OnClientClosed += OnClientClosed; |
183 | // so lets see if things explode if we don't do it | ||
184 | // scene.EventManager.OnClientClosed += OnClientClosed; | ||
185 | 183 | ||
186 | } | 184 | } |
187 | 185 | ||
@@ -246,9 +244,11 @@ namespace OpenSim.Groups | |||
246 | // Used for Notices and Group Invites/Accept/Reject | 244 | // Used for Notices and Group Invites/Accept/Reject |
247 | sp.ControllingClient.OnInstantMessage += OnInstantMessage; | 245 | sp.ControllingClient.OnInstantMessage += OnInstantMessage; |
248 | 246 | ||
249 | // we should send a DataUpdate here for compatibility, | 247 | // Send out group data update for compatibility. |
250 | // but this is a bad place and a bad thread to do it | 248 | // There might be some problem with the thread we're generating this on but not |
251 | // also current viewers do ignore it and ask later on a much nicer thread | 249 | // doing the update at this time causes problems (Mantis #7920 and #7915) |
250 | // TODO: move sending this update to a later time in the rootification of the client. | ||
251 | SendAgentGroupDataUpdate(sp.ControllingClient, false); | ||
252 | } | 252 | } |
253 | 253 | ||
254 | private void OnMakeChild(ScenePresence sp) | 254 | private void OnMakeChild(ScenePresence sp) |
@@ -315,6 +315,8 @@ namespace OpenSim.Groups | |||
315 | return; | 315 | return; |
316 | 316 | ||
317 | SendAgentGroupDataUpdate(remoteClient, false); | 317 | SendAgentGroupDataUpdate(remoteClient, false); |
318 | |||
319 | // also current viewers do ignore it and ask later on a much nicer thread | ||
318 | // its a info request not a change, so nothing is sent to others | 320 | // its a info request not a change, so nothing is sent to others |
319 | // they do get the group title with the avatar object update on arrivel to a region | 321 | // they do get the group title with the avatar object update on arrivel to a region |
320 | } | 322 | } |
@@ -578,6 +580,10 @@ namespace OpenSim.Groups | |||
578 | 580 | ||
579 | m_groupData.SetAgentActiveGroup(GetRequestingAgentIDStr(remoteClient), GetRequestingAgentIDStr(remoteClient), groupID); | 581 | m_groupData.SetAgentActiveGroup(GetRequestingAgentIDStr(remoteClient), GetRequestingAgentIDStr(remoteClient), groupID); |
580 | 582 | ||
583 | // Changing active group changes title, active powers, all kinds of things | ||
584 | // anyone who is in any region that can see this client, should probably be | ||
585 | // updated with new group info. At a minimum, they should get ScenePresence | ||
586 | // updated with new title. | ||
581 | SendAgentGroupDataUpdate(remoteClient, true); | 587 | SendAgentGroupDataUpdate(remoteClient, true); |
582 | } | 588 | } |
583 | 589 | ||
@@ -1240,7 +1246,7 @@ namespace OpenSim.Groups | |||
1240 | GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); | 1246 | GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); |
1241 | remoteClient.SendAgentGroupDataUpdate(agentID, membershipArray); | 1247 | remoteClient.SendAgentGroupDataUpdate(agentID, membershipArray); |
1242 | 1248 | ||
1243 | remoteClient.RefreshGroupMembership(); | 1249 | remoteClient.RefreshGroupMembership(); |
1244 | } | 1250 | } |
1245 | 1251 | ||
1246 | /// <summary> | 1252 | /// <summary> |