diff options
author | Melanie | 2010-09-28 02:22:32 +0200 |
---|---|---|
committer | Melanie | 2010-09-28 02:22:32 +0200 |
commit | 3d75e9addd50b9416a221282d7e24fc44ebda3a8 (patch) | |
tree | 7ebe486a1aa1b3ace65e4bd3e7ca8cbefa421055 | |
parent | Try to prevent threading issues in SP.SetAppearance by locking it (diff) | |
download | opensim-SC_OLD-3d75e9addd50b9416a221282d7e24fc44ebda3a8.zip opensim-SC_OLD-3d75e9addd50b9416a221282d7e24fc44ebda3a8.tar.gz opensim-SC_OLD-3d75e9addd50b9416a221282d7e24fc44ebda3a8.tar.bz2 opensim-SC_OLD-3d75e9addd50b9416a221282d7e24fc44ebda3a8.tar.xz |
Lock the iteration over the inventory items when saving script states
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index c88dda6..522f75e 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||
@@ -1241,6 +1241,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1241 | if (engines == null) // No engine at all | 1241 | if (engines == null) // No engine at all |
1242 | return ret; | 1242 | return ret; |
1243 | 1243 | ||
1244 | Items.LockItemsForRead(true); | ||
1244 | foreach (TaskInventoryItem item in m_items.Values) | 1245 | foreach (TaskInventoryItem item in m_items.Values) |
1245 | { | 1246 | { |
1246 | if (item.InvType == (int)InventoryType.LSL) | 1247 | if (item.InvType == (int)InventoryType.LSL) |
@@ -1268,6 +1269,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1268 | } | 1269 | } |
1269 | } | 1270 | } |
1270 | } | 1271 | } |
1272 | Items.LockItemsForRead(false); | ||
1271 | return ret; | 1273 | return ret; |
1272 | } | 1274 | } |
1273 | 1275 | ||