aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
authorMelanie2010-11-25 21:22:22 +0100
committerMelanie2010-11-25 21:22:22 +0100
commit33c023bf6a0dc5445b6ccbecfff080032f279f2e (patch)
treeedfac00a34d77023627b4b8db0e12a096da98231 /OpenSim/Region/CoreModules
parentAdd the ability for gods to impersonate users. For this, bit 6 needs to be (diff)
downloadopensim-SC_OLD-33c023bf6a0dc5445b6ccbecfff080032f279f2e.zip
opensim-SC_OLD-33c023bf6a0dc5445b6ccbecfff080032f279f2e.tar.gz
opensim-SC_OLD-33c023bf6a0dc5445b6ccbecfff080032f279f2e.tar.bz2
opensim-SC_OLD-33c023bf6a0dc5445b6ccbecfff080032f279f2e.tar.xz
Allow group lookup during tp / login to make restricting parcels to group
work.
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandObject.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
index d0517b7..d596887 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
@@ -294,7 +294,22 @@ namespace OpenSim.Region.CoreModules.World.Land
294 { 294 {
295 ScenePresence sp; 295 ScenePresence sp;
296 if (!m_scene.TryGetScenePresence(avatar, out sp)) 296 if (!m_scene.TryGetScenePresence(avatar, out sp))
297 {
298 IGroupsModule groupsModule = m_scene.RequestModuleInterface<IGroupsModule>();
299 if (groupsModule == null)
300 return false;
301
302 GroupMembershipData[] membership = groupsModule.GetMembershipData(avatar);
303 if (membership == null || membership.Length == 0)
304 return false;
305
306 foreach (GroupMembershipData d in membership)
307 {
308 if (d.GroupID == LandData.GroupID)
309 return true;
310 }
297 return false; 311 return false;
312 }
298 313
299 if (!sp.ControllingClient.IsGroupMember(LandData.GroupID)) 314 if (!sp.ControllingClient.IsGroupMember(LandData.GroupID))
300 return false; 315 return false;