From 8f58a9a107047bf9d9aff4d8c25171acaa8e9805 Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Mon, 3 Dec 2007 20:06:01 +0000 Subject: From Justin Casey (IBM) While exploring what it would take to get the 'new script' button working, I encountered the fact, some way down in the rabbit hole, that if a user renamed an item in their inventory and logged out (without a restart of the simulator), on log in the new name was not preserved. As far as I can see, this was because any updates which didn't occur inside a transaction were ignored by opensim. This patch pays attention to those changes. It generates a new asset when an item is updated and changes the user's inventory properties appropriately. I believe this behaviour is in line with the copy-on-write semantics used in the Second Life protocol - perhaps it could be optimized if we knew for sure that the only copy of the object was in the user's inventory. This also means that if you rename an item (e.g. a script) before you drag it into an object's inventory, the inventory will receive the item's most recent name and description. --- OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region/Examples/SimpleApp') diff --git a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs index 6887deb..69cf7b3 100644 --- a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs +++ b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs @@ -108,7 +108,7 @@ namespace SimpleApp public event FetchInventoryDescendents OnFetchInventoryDescendents; public event FetchInventory OnFetchInventory; public event RequestTaskInventory OnRequestTaskInventory; - public event UpdateInventoryItemTransaction OnUpdateInventoryItem; + public event UpdateInventoryItem OnUpdateInventoryItem; public event CopyInventoryItem OnCopyInventoryItem; public event UDPAssetUploadRequest OnAssetUploadRequest; public event XferReceive OnXferReceive; @@ -157,6 +157,11 @@ namespace SimpleApp { get { return LLUUID.Zero; } } + + public LLUUID SecureSessionId + { + get { return LLUUID.Zero; } + } public virtual string FirstName { -- cgit v1.1