aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs11
1 files changed, 9 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
index e0009bb..e6d6cbf 100644
--- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
@@ -646,11 +646,12 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
646 } 646 }
647 else 647 else
648 { 648 {
649 if (remoteClient == null || so.OwnerID != remoteClient.AgentId) 649 if (remoteClient == null || so.RootPart.OwnerID != remoteClient.AgentId)
650 { 650 {
651 // Taking copy of another person's item. Take to 651 // Taking copy of another person's item. Take to
652 // Objects folder. 652 // Objects folder.
653 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.Object); 653 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.Object);
654 so.FromFolderID = UUID.Zero;
654 } 655 }
655 else 656 else
656 { 657 {
@@ -666,10 +667,16 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
666 // 667 //
667 if (action == DeRezAction.Take || action == DeRezAction.TakeCopy) 668 if (action == DeRezAction.Take || action == DeRezAction.TakeCopy)
668 { 669 {
669 if (so.FromFolderID != UUID.Zero && userID == remoteClient.AgentId) 670 if (so.FromFolderID != UUID.Zero && so.RootPart.OwnerID == remoteClient.AgentId)
670 { 671 {
671 InventoryFolderBase f = new InventoryFolderBase(so.FromFolderID, userID); 672 InventoryFolderBase f = new InventoryFolderBase(so.FromFolderID, userID);
672 folder = m_Scene.InventoryService.GetFolder(f); 673 folder = m_Scene.InventoryService.GetFolder(f);
674
675 if(folder.Type == 14 || folder.Type == 16)
676 {
677 // folder.Type = 6;
678 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.Object);
679 }
673 } 680 }
674 } 681 }
675 682