diff options
author | Melanie | 2011-01-10 22:02:22 +0100 |
---|---|---|
committer | Melanie | 2011-01-10 22:02:22 +0100 |
commit | 2c6a410e903767a9c4f18777ec0d9fd862fe531e (patch) | |
tree | 5d0411926bf5bcc5ba2035b3697afbe39fbf13d3 /OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |
parent | Taint SOGs the right way (diff) | |
download | opensim-SC_OLD-2c6a410e903767a9c4f18777ec0d9fd862fe531e.zip opensim-SC_OLD-2c6a410e903767a9c4f18777ec0d9fd862fe531e.tar.gz opensim-SC_OLD-2c6a410e903767a9c4f18777ec0d9fd862fe531e.tar.bz2 opensim-SC_OLD-2c6a410e903767a9c4f18777ec0d9fd862fe531e.tar.xz |
Partial permissions fix for boxed items.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index 6c56dc3..3b1ab01 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||
@@ -1163,16 +1163,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
1163 | 1163 | ||
1164 | foreach (TaskInventoryItem item in m_items.Values) | 1164 | foreach (TaskInventoryItem item in m_items.Values) |
1165 | { | 1165 | { |
1166 | if (item.InvType != (int)InventoryType.Object) | 1166 | if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Copy) == 0) |
1167 | { | 1167 | mask &= ~((uint)PermissionMask.Copy >> 13); |
1168 | if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Copy) == 0) | 1168 | if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Transfer) == 0) |
1169 | mask &= ~((uint)PermissionMask.Copy >> 13); | 1169 | mask &= ~((uint)PermissionMask.Transfer >> 13); |
1170 | if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Transfer) == 0) | 1170 | if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Modify) == 0) |
1171 | mask &= ~((uint)PermissionMask.Transfer >> 13); | 1171 | mask &= ~((uint)PermissionMask.Modify >> 13); |
1172 | if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Modify) == 0) | 1172 | |
1173 | mask &= ~((uint)PermissionMask.Modify >> 13); | 1173 | if (item.InvType == (int)InventoryType.Object) |
1174 | } | ||
1175 | else | ||
1176 | { | 1174 | { |
1177 | if ((item.CurrentPermissions & ((uint)PermissionMask.Copy >> 13)) == 0) | 1175 | if ((item.CurrentPermissions & ((uint)PermissionMask.Copy >> 13)) == 0) |
1178 | mask &= ~((uint)PermissionMask.Copy >> 13); | 1176 | mask &= ~((uint)PermissionMask.Copy >> 13); |