One more stab at http://opensimulator.org/mantis/view.php?id=4858.
Eliminated the nested locks of m_Scripts and m_PrimObjects.prebuild-update
parent
cd2bb7daf3
commit
5c0c7fda6c
|
@ -820,18 +820,20 @@ namespace OpenSim.Region.ScriptEngine.XEngine
|
|||
m_CompileDict.Remove(itemID);
|
||||
}
|
||||
|
||||
IScriptInstance instance = null;
|
||||
|
||||
lock (m_Scripts)
|
||||
{
|
||||
// Do we even have it?
|
||||
if (!m_Scripts.ContainsKey(itemID))
|
||||
return;
|
||||
|
||||
IScriptInstance instance=m_Scripts[itemID];
|
||||
instance=m_Scripts[itemID];
|
||||
m_Scripts.Remove(itemID);
|
||||
}
|
||||
|
||||
instance.ClearQueue();
|
||||
instance.Stop(0);
|
||||
|
||||
// bool objectRemoved = false;
|
||||
|
||||
lock (m_PrimObjects)
|
||||
|
@ -871,8 +873,6 @@ namespace OpenSim.Region.ScriptEngine.XEngine
|
|||
handlerObjectRemoved(part.UUID);
|
||||
}
|
||||
|
||||
CleanAssemblies();
|
||||
}
|
||||
|
||||
ScriptRemoved handlerScriptRemoved = OnScriptRemoved;
|
||||
if (handlerScriptRemoved != null)
|
||||
|
|
Loading…
Reference in New Issue