diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index e61132e..0ac427f 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | |||
@@ -1592,7 +1592,17 @@ namespace OpenSim.Region.Framework.Scenes | |||
1592 | // So that we know the database is upto date, | 1592 | // So that we know the database is upto date, |
1593 | // for when deleting the object from it | 1593 | // for when deleting the object from it |
1594 | ForceSceneObjectBackup(grp); | 1594 | ForceSceneObjectBackup(grp); |
1595 | if (remoteClient != null) | 1595 | |
1596 | if (remoteClient == null) | ||
1597 | { | ||
1598 | // Autoreturn has a null client. Nothing else does. So | ||
1599 | // allow only returns | ||
1600 | if (action != DeRezAction.Return) | ||
1601 | return; | ||
1602 | |||
1603 | permissionToTakeCopy = false; | ||
1604 | } | ||
1605 | else | ||
1596 | { | 1606 | { |
1597 | if (!Permissions.CanTakeCopyObject(grp.UUID, remoteClient.AgentId)) | 1607 | if (!Permissions.CanTakeCopyObject(grp.UUID, remoteClient.AgentId)) |
1598 | permissionToTakeCopy = false; | 1608 | permissionToTakeCopy = false; |
@@ -1601,7 +1611,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
1601 | 1611 | ||
1602 | if (!Permissions.CanDeleteObject(grp.UUID, remoteClient.AgentId)) | 1612 | if (!Permissions.CanDeleteObject(grp.UUID, remoteClient.AgentId)) |
1603 | permissionToDelete = false; | 1613 | permissionToDelete = false; |
1604 | |||
1605 | } | 1614 | } |
1606 | } | 1615 | } |
1607 | 1616 | ||