aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
diff options
context:
space:
mode:
authorDiva Canto2009-08-22 10:24:26 -0700
committerDiva Canto2009-08-22 10:24:26 -0700
commitb03eeeb9f6331ed36c61f55aef847ce3b2db7ba4 (patch)
treeac9eb8fc50943d35268cc56d67b1a3f38cf705b3 /OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
parentMerge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim (diff)
downloadopensim-SC-b03eeeb9f6331ed36c61f55aef847ce3b2db7ba4.zip
opensim-SC-b03eeeb9f6331ed36c61f55aef847ce3b2db7ba4.tar.gz
opensim-SC-b03eeeb9f6331ed36c61f55aef847ce3b2db7ba4.tar.bz2
opensim-SC-b03eeeb9f6331ed36c61f55aef847ce3b2db7ba4.tar.xz
* Fixes mantis http://opensimulator.org/mantis/view.php?id=4044. Turns out folders were never being removed from trash when they were singled out for purging in trash. They were being removed when Trash was purged as a whole. That behavior is now fixed for the new InventoryService set.
* Removed left-overs from AssetInventoryServer.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.Inventory.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs18
1 files changed, 5 insertions, 13 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index a9d361b..3301536 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -789,23 +789,15 @@ namespace OpenSim.Region.Framework.Scenes
789 } 789 }
790 790
791 /// <summary> 791 /// <summary>
792 /// Removes an inventory folder. Although there is a packet in the Linden protocol for this, it may be 792 /// Removes an inventory folder. This packet is sent when the user
793 /// legacy and not currently used (purge folder is used to remove folders from trash instead). 793 /// right-clicks a folder that's already in trash and chooses "purge"
794 /// </summary> 794 /// </summary>
795 /// <param name="remoteClient"></param> 795 /// <param name="remoteClient"></param>
796 /// <param name="folderID"></param> 796 /// <param name="folderID"></param>
797 private void RemoveInventoryFolder(IClientAPI remoteClient, UUID folderID) 797 private void RemoveInventoryFolder(IClientAPI remoteClient, List<UUID> folderIDs)
798 { 798 {
799 // Unclear is this handler is ever called by the Linden client, but it might 799 m_log.DebugFormat("[SCENE INVENTORY]: RemoveInventoryFolders count {0}", folderIDs.Count);
800 800 InventoryService.DeleteFolders(remoteClient.AgentId, folderIDs);
801 InventoryFolderBase folder = new InventoryFolderBase(folderID);
802 folder.Owner = remoteClient.AgentId;
803 InventoryFolderBase trash = InventoryService.GetFolderForType(remoteClient.AgentId, AssetType.TrashFolder);
804 if (trash != null)
805 {
806 folder.ParentID = trash.ID;
807 InventoryService.MoveFolder(folder);
808 }
809 } 801 }
810 802
811 private SceneObjectGroup GetGroupByPrim(uint localID) 803 private SceneObjectGroup GetGroupByPrim(uint localID)