From f198c6854708776a689797d73af49f9846ea9b79 Mon Sep 17 00:00:00 2001 From: Melanie Date: Mon, 4 Jan 2010 05:34:32 +0000 Subject: Mark GetUserInventory as obsolete. It is still used in the default avatars module and in the REST inventory service, but future inventory services and/or connector will not include this method anymore, because it is dangerous on large inventory servers. Marking as obsolete to give an incentive to rewrite these services to use the recursive fetching or more targeted retrieval. --- OpenSim/Services/Interfaces/IInventoryService.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenSim/Services/Interfaces/IInventoryService.cs b/OpenSim/Services/Interfaces/IInventoryService.cs index c775090..1b78fb3 100644 --- a/OpenSim/Services/Interfaces/IInventoryService.cs +++ b/OpenSim/Services/Interfaces/IInventoryService.cs @@ -59,6 +59,7 @@ namespace OpenSim.Services.Interfaces /// /// /// + [Obsolete] InventoryCollection GetUserInventory(UUID userID); /// @@ -67,6 +68,7 @@ namespace OpenSim.Services.Interfaces /// /// /// + [Obsolete] void GetUserInventory(UUID userID, InventoryReceiptCallback callback); /// -- cgit v1.1 From 374077547226014f00a021756b8e9c357d017264 Mon Sep 17 00:00:00 2001 From: Melanie Date: Mon, 4 Jan 2010 06:16:04 +0000 Subject: When rezzing a no-copy object on a no-rez parcel, the object vanishes from inventory until relog. This patch corrects this and puts the item back into inventory. --- OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index 89ce4ae..3044017 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs @@ -2052,6 +2052,13 @@ namespace OpenSim.Region.Framework.Scenes group.Children.Count, remoteClient.AgentId, pos) && !attachment) { + // The client operates in no fail mode. It will + // have already removed the item from the folder + // if it's no copy. + // Put it back if it's not an attachment + // + if (((item.CurrentPermissions & (uint)PermissionMask.Copy) == 0) && (!attachment)) + remoteClient.SendBulkUpdateInventory(item); return null; } -- cgit v1.1