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 | |
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.
-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> |