Eliminated the nested locks of m_Scripts and m_PrimObjects.
0.7-release
Diva Canto 2010-07-19 13:59:11 -07:00
parent 5a8ddfe211
commit 699d3b0965
1 changed files with 37 additions and 37 deletions

View File

@ -818,18 +818,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)
@ -869,8 +871,6 @@ namespace OpenSim.Region.ScriptEngine.XEngine
handlerObjectRemoved(part.UUID);
}
CleanAssemblies();
}
ScriptRemoved handlerScriptRemoved = OnScriptRemoved;
if (handlerScriptRemoved != null)