Eliminated the nested locks of m_Scripts and m_PrimObjects.
prebuild-update
Diva Canto 2010-07-19 13:59:11 -07:00
parent cd2bb7daf3
commit 5c0c7fda6c
1 changed files with 37 additions and 37 deletions

View File

@ -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)