From b03eeeb9f6331ed36c61f55aef847ce3b2db7ba4 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Sat, 22 Aug 2009 10:24:26 -0700
Subject: * 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.
---
OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | 18 +++++-------------
1 file changed, 5 insertions(+), 13 deletions(-)
(limited to 'OpenSim/Region/Framework/Scenes/Scene.Inventory.cs')
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
}
///
- /// Removes an inventory folder. Although there is a packet in the Linden protocol for this, it may be
- /// legacy and not currently used (purge folder is used to remove folders from trash instead).
+ /// Removes an inventory folder. This packet is sent when the user
+ /// right-clicks a folder that's already in trash and chooses "purge"
///
///
///
- private void RemoveInventoryFolder(IClientAPI remoteClient, UUID folderID)
+ private void RemoveInventoryFolder(IClientAPI remoteClient, List folderIDs)
{
- // Unclear is this handler is ever called by the Linden client, but it might
-
- InventoryFolderBase folder = new InventoryFolderBase(folderID);
- folder.Owner = remoteClient.AgentId;
- InventoryFolderBase trash = InventoryService.GetFolderForType(remoteClient.AgentId, AssetType.TrashFolder);
- if (trash != null)
- {
- folder.ParentID = trash.ID;
- InventoryService.MoveFolder(folder);
- }
+ m_log.DebugFormat("[SCENE INVENTORY]: RemoveInventoryFolders count {0}", folderIDs.Count);
+ InventoryService.DeleteFolders(remoteClient.AgentId, folderIDs);
}
private SceneObjectGroup GetGroupByPrim(uint localID)
--
cgit v1.1