diff options
Diffstat (limited to 'OpenSim/ApplicationPlugins')
-rw-r--r-- | OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs b/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs index 5453420..cf2e037 100644 --- a/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs +++ b/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs | |||
@@ -2942,15 +2942,13 @@ namespace OpenSim.ApplicationPlugins.RemoteController | |||
2942 | /// </summary> | 2942 | /// </summary> |
2943 | private void ApplyNextOwnerPermissions(InventoryItemBase item) | 2943 | private void ApplyNextOwnerPermissions(InventoryItemBase item) |
2944 | { | 2944 | { |
2945 | if (item.InvType == (int)InventoryType.Object && (item.CurrentPermissions & 7) != 0) | 2945 | if (item.InvType == (int)InventoryType.Object) |
2946 | { | 2946 | { |
2947 | if ((item.CurrentPermissions & ((uint)PermissionMask.Copy >> 13)) == 0) | 2947 | uint perms = item.CurrentPermissions; |
2948 | item.CurrentPermissions &= ~(uint)PermissionMask.Copy; | 2948 | PermissionsUtil.ApplyFoldedPermissions(item.CurrentPermissions, ref perms); |
2949 | if ((item.CurrentPermissions & ((uint)PermissionMask.Transfer >> 13)) == 0) | 2949 | item.CurrentPermissions = perms; |
2950 | item.CurrentPermissions &= ~(uint)PermissionMask.Transfer; | ||
2951 | if ((item.CurrentPermissions & ((uint)PermissionMask.Modify >> 13)) == 0) | ||
2952 | item.CurrentPermissions &= ~(uint)PermissionMask.Modify; | ||
2953 | } | 2950 | } |
2951 | |||
2954 | item.CurrentPermissions &= item.NextPermissions; | 2952 | item.CurrentPermissions &= item.NextPermissions; |
2955 | item.BasePermissions &= item.NextPermissions; | 2953 | item.BasePermissions &= item.NextPermissions; |
2956 | item.EveryOnePermissions &= item.NextPermissions; | 2954 | item.EveryOnePermissions &= item.NextPermissions; |