aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorUbitUmarov2016-08-04 21:36:41 +0100
committerUbitUmarov2016-08-04 21:36:41 +0100
commite57d3edf6f483013461888c6acb65312101ab0eb (patch)
tree480149fd55b4a7ccf0ed01abeb4ea96920569f13 /OpenSim/Region/ClientStack
parentadd GetActiveMembershipData() to groups modules, let core groups also have Ge... (diff)
downloadopensim-SC-e57d3edf6f483013461888c6acb65312101ab0eb.zip
opensim-SC-e57d3edf6f483013461888c6acb65312101ab0eb.tar.gz
opensim-SC-e57d3edf6f483013461888c6acb65312101ab0eb.tar.bz2
opensim-SC-e57d3edf6f483013461888c6acb65312101ab0eb.tar.xz
make sure all new scenepresences have fresh groups information at creation time (grouptitle missing but not that needed at that point) (use direct calls exactly where we want things to happen), reusing a funtion name to rename later
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs23
1 files changed, 22 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 26fc85e..25ecc96 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -13148,11 +13148,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
13148 { 13148 {
13149 lock(m_groupPowers) 13149 lock(m_groupPowers)
13150 { 13150 {
13151 GroupMembershipData activeMembership = null;
13151 if (m_GroupsModule != null) 13152 if (m_GroupsModule != null)
13152 { 13153 {
13153 GroupMembershipData[] GroupMembership = 13154 GroupMembershipData[] GroupMembership =
13154 m_GroupsModule.GetMembershipData(AgentId); 13155 m_GroupsModule.GetMembershipData(AgentId);
13155 13156
13156 m_groupPowers.Clear(); 13157 m_groupPowers.Clear();
13157 13158
13158 if (GroupMembership != null) 13159 if (GroupMembership != null)
@@ -13162,6 +13163,26 @@ namespace OpenSim.Region.ClientStack.LindenUDP
13162 m_groupPowers[GroupMembership[i].GroupID] = GroupMembership[i].GroupPowers; 13163 m_groupPowers[GroupMembership[i].GroupID] = GroupMembership[i].GroupPowers;
13163 } 13164 }
13164 } 13165 }
13166
13167 activeMembership = m_GroupsModule.GetActiveMembershipData(AgentId);
13168 if(activeMembership != null)
13169 {
13170 if(!m_groupPowers.ContainsKey(activeMembership.GroupID))
13171 activeMembership = null;
13172 else
13173 {
13174 m_activeGroupID = activeMembership.GroupID;
13175 m_activeGroupName = activeMembership.GroupName;
13176 m_activeGroupPowers = ActiveGroupPowers;
13177 }
13178 }
13179 }
13180
13181 if(activeMembership == null)
13182 {
13183 m_activeGroupID = UUID.Zero;
13184 m_activeGroupName = "";
13185 m_activeGroupPowers = 0;
13165 } 13186 }
13166 } 13187 }
13167 } 13188 }