diff options
author | Melanie Thielker | 2009-04-27 23:12:35 +0000 |
---|---|---|
committer | Melanie Thielker | 2009-04-27 23:12:35 +0000 |
commit | 6b5a110857fcc1ef7a150a51408852226bbf0eb0 (patch) | |
tree | 06100d2d05ebbff12dcb4e966075aa0a862f9d7a /OpenSim | |
parent | Another attempt at mantis #3527. (diff) | |
download | opensim-SC-6b5a110857fcc1ef7a150a51408852226bbf0eb0.zip opensim-SC-6b5a110857fcc1ef7a150a51408852226bbf0eb0.tar.gz opensim-SC-6b5a110857fcc1ef7a150a51408852226bbf0eb0.tar.bz2 opensim-SC-6b5a110857fcc1ef7a150a51408852226bbf0eb0.tar.xz |
Make sure that, on "Anyone can copy" the person copying the object
has transfer perms as well as copy perms.
This may block some cases where the owner would normally be able to take
copy.
Fixes Mantis #3464
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs index 25bfd7d..b8efc4a 100644 --- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs +++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | |||
@@ -51,7 +51,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions | |||
51 | private uint PERM_COPY = (uint)32768; | 51 | private uint PERM_COPY = (uint)32768; |
52 | //private uint PERM_MODIFY = (uint)16384; | 52 | //private uint PERM_MODIFY = (uint)16384; |
53 | private uint PERM_MOVE = (uint)524288; | 53 | private uint PERM_MOVE = (uint)524288; |
54 | //private uint PERM_TRANS = (uint)8192; | 54 | private uint PERM_TRANS = (uint)8192; |
55 | private uint PERM_LOCKED = (uint)540672; | 55 | private uint PERM_LOCKED = (uint)540672; |
56 | 56 | ||
57 | /// <value> | 57 | /// <value> |
@@ -1132,14 +1132,14 @@ namespace OpenSim.Region.CoreModules.World.Permissions | |||
1132 | if ((task.RootPart.EveryoneMask & PERM_COPY) != 0) | 1132 | if ((task.RootPart.EveryoneMask & PERM_COPY) != 0) |
1133 | permission = true; | 1133 | permission = true; |
1134 | 1134 | ||
1135 | if ((task.GetEffectivePermissions() & PERM_COPY) == 0) | 1135 | if ((task.GetEffectivePermissions() & (PERM_COPY | PERM_TRANS)) != (PERM_COPY | PERM_TRANS)) |
1136 | permission = false; | 1136 | permission = false; |
1137 | } | 1137 | } |
1138 | else | 1138 | else |
1139 | { | 1139 | { |
1140 | SceneObjectGroup task = (SceneObjectGroup)m_scene.Entities[objectID]; | 1140 | SceneObjectGroup task = (SceneObjectGroup)m_scene.Entities[objectID]; |
1141 | 1141 | ||
1142 | if ((task.GetEffectivePermissions() & PERM_COPY) == 0) | 1142 | if ((task.GetEffectivePermissions() & (PERM_COPY | PERM_TRANS)) != (PERM_COPY | PERM_TRANS)) |
1143 | permission = false; | 1143 | permission = false; |
1144 | } | 1144 | } |
1145 | 1145 | ||