aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.Inventory.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs17
1 files changed, 13 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 3044017..dd4c14b 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -846,8 +846,12 @@ namespace OpenSim.Region.Framework.Scenes
846 public void RemoveTaskInventory(IClientAPI remoteClient, UUID itemID, uint localID) 846 public void RemoveTaskInventory(IClientAPI remoteClient, UUID itemID, uint localID)
847 { 847 {
848 SceneObjectPart part = GetSceneObjectPart(localID); 848 SceneObjectPart part = GetSceneObjectPart(localID);
849 SceneObjectGroup group = part.ParentGroup; 849 SceneObjectGroup group = null;
850 if (group != null) 850 if (part != null)
851 {
852 group = part.ParentGroup;
853 }
854 if (part != null && group != null)
851 { 855 {
852 TaskInventoryItem item = group.GetInventoryItem(localID, itemID); 856 TaskInventoryItem item = group.GetInventoryItem(localID, itemID);
853 if (item == null) 857 if (item == null)
@@ -1799,8 +1803,13 @@ namespace OpenSim.Region.Framework.Scenes
1799 } 1803 }
1800 else 1804 else
1801 { 1805 {
1802 item.BasePermissions = objectGroup.GetEffectivePermissions(); 1806 uint ownerPerms = objectGroup.GetEffectivePermissions();
1803 item.CurrentPermissions = objectGroup.GetEffectivePermissions(); 1807 if ((objectGroup.RootPart.OwnerMask & (uint)PermissionMask.Modify) != 0)
1808 ownerPerms |= (uint)PermissionMask.Modify;
1809
1810 item.BasePermissions = ownerPerms;
1811 item.CurrentPermissions = ownerPerms;
1812
1804 item.NextPermissions = objectGroup.RootPart.NextOwnerMask; 1813 item.NextPermissions = objectGroup.RootPart.NextOwnerMask;
1805 item.EveryOnePermissions = objectGroup.RootPart.EveryoneMask; 1814 item.EveryOnePermissions = objectGroup.RootPart.EveryoneMask;
1806 item.GroupPermissions = objectGroup.RootPart.GroupMask; 1815 item.GroupPermissions = objectGroup.RootPart.GroupMask;