diff options
author | Melanie | 2011-11-12 12:09:28 +0100 |
---|---|---|
committer | Melanie | 2011-11-12 12:09:28 +0100 |
commit | efc6c6db7ce3602660c566f4beaf529d5ea9ec71 (patch) | |
tree | 27263fd71b6f03292bb369a19bab77ad6dfea3d8 /OpenSim/Region/Framework/Scenes | |
parent | Merge branch 'master' into bigmerge (diff) | |
download | opensim-SC-efc6c6db7ce3602660c566f4beaf529d5ea9ec71.zip opensim-SC-efc6c6db7ce3602660c566f4beaf529d5ea9ec71.tar.gz opensim-SC-efc6c6db7ce3602660c566f4beaf529d5ea9ec71.tar.bz2 opensim-SC-efc6c6db7ce3602660c566f4beaf529d5ea9ec71.tar.xz |
Fix taking or returning locked objects losing permissions for owner
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs index 6bd9183..c7da4f4 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | |||
@@ -230,6 +230,11 @@ namespace OpenSim.Region.Framework.Scenes | |||
230 | 230 | ||
231 | public uint GetEffectivePermissions() | 231 | public uint GetEffectivePermissions() |
232 | { | 232 | { |
233 | return GetEffectivePermissions(false); | ||
234 | } | ||
235 | |||
236 | public uint GetEffectivePermissions(bool useBase) | ||
237 | { | ||
233 | uint perms=(uint)(PermissionMask.Modify | | 238 | uint perms=(uint)(PermissionMask.Modify | |
234 | PermissionMask.Copy | | 239 | PermissionMask.Copy | |
235 | PermissionMask.Move | | 240 | PermissionMask.Move | |
@@ -241,7 +246,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
241 | for (int i = 0; i < parts.Length; i++) | 246 | for (int i = 0; i < parts.Length; i++) |
242 | { | 247 | { |
243 | SceneObjectPart part = parts[i]; | 248 | SceneObjectPart part = parts[i]; |
244 | ownerMask &= part.OwnerMask; | 249 | if (useBase) |
250 | ownerMask &= part.BaseMask; | ||
251 | else | ||
252 | ownerMask &= part.OwnerMask; | ||
245 | perms &= part.Inventory.MaskEffectivePermissions(); | 253 | perms &= part.Inventory.MaskEffectivePermissions(); |
246 | } | 254 | } |
247 | 255 | ||