aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs14
1 files changed, 10 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 321d0aa..db6ba94 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -708,10 +708,16 @@ namespace OpenSim.Region.Framework.Scenes
708 item.BasePermissions, item.CurrentPermissions, item.EveryOnePermissions, item.NextPermissions, item.GroupPermissions, Util.UnixTimeSinceEpoch()); 708 item.BasePermissions, item.CurrentPermissions, item.EveryOnePermissions, item.NextPermissions, item.GroupPermissions, Util.UnixTimeSinceEpoch());
709 } 709 }
710 else 710 else
711 { 711 {
712 CreateNewInventoryItem( 712 // If item is transfer or permissions are off or calling agent is allowed to copy item owner's inventory item.
713 remoteClient, item.CreatorId, item.CreatorData, newFolderID, newName, item.Flags, callbackID, asset, (sbyte)item.InvType, 713 if (((item.CurrentPermissions & (uint)PermissionMask.Transfer) != 0) || m_permissions.BypassPermissions() || m_permissions.CanCopyUserInventory(remoteClient.AgentId, oldItemID))
714 item.NextPermissions, item.NextPermissions, item.EveryOnePermissions & item.NextPermissions, item.NextPermissions, item.GroupPermissions, Util.UnixTimeSinceEpoch()); 714 {
715 CreateNewInventoryItem(
716 remoteClient, item.CreatorId, item.CreatorData, newFolderID, newName, item.Flags, callbackID,
717 asset, (sbyte) item.InvType,
718 item.NextPermissions, item.NextPermissions, item.EveryOnePermissions & item.NextPermissions,
719 item.NextPermissions, item.GroupPermissions, Util.UnixTimeSinceEpoch());
720 }
715 } 721 }
716 } 722 }
717 else 723 else