In llMessageLinked() use GetInventoryItems() rather than cloning TaskInventory directory
GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe0.7.4.1
parent
3769739ca7
commit
4b2b14dad1
|
@ -4116,7 +4116,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
|||
return tid.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
ScriptSleep(1000);
|
||||
return String.Empty;
|
||||
}
|
||||
|
@ -4333,9 +4333,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
|||
UUID partItemID;
|
||||
foreach (SceneObjectPart part in parts)
|
||||
{
|
||||
TaskInventoryDictionary itemsDictionary = (TaskInventoryDictionary)part.TaskInventory.Clone();
|
||||
|
||||
foreach (TaskInventoryItem item in itemsDictionary.Values)
|
||||
foreach (TaskInventoryItem item in part.Inventory.GetInventoryItems())
|
||||
{
|
||||
if (item.Type == ScriptBaseClass.INVENTORY_SCRIPT)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue