diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index 2841f7fe91..3b029f2221 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs @@ -1246,17 +1246,14 @@ namespace OpenSim.Region.Framework.Scenes // if (HasInventoryChanged) // { Items.LockItemsForRead(true); + ICollection itemsvalues = Items.Values; + HasInventoryChanged = false; + Items.LockItemsForRead(false); try { - datastore.StorePrimInventory(m_part.UUID, Items.Values); + datastore.StorePrimInventory(m_part.UUID, itemsvalues); } catch {} - - HasInventoryChanged = false; - - Items.LockItemsForRead(false); - - // } }