Swap the locking of m_EventQueue and m_Script to ease locks on script inventory operations
parent
73c2162ff6
commit
247c66b3fe
|
@ -640,11 +640,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
|||
/// <returns></returns>
|
||||
public object EventProcessor()
|
||||
{
|
||||
lock (m_Script)
|
||||
{
|
||||
|
||||
EventParams data = null;
|
||||
|
||||
lock (m_EventQueue)
|
||||
{
|
||||
lock (m_Script)
|
||||
{
|
||||
data = (EventParams) m_EventQueue.Dequeue();
|
||||
if (data == null) // Shouldn't happen
|
||||
|
@ -670,6 +671,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
|||
if (data.EventName == "collision")
|
||||
m_CollisionInQueue = false;
|
||||
}
|
||||
}
|
||||
lock(m_Script)
|
||||
{
|
||||
|
||||
//m_log.DebugFormat("[XENGINE]: Processing event {0} for {1}", data.EventName, this);
|
||||
|
||||
|
|
Loading…
Reference in New Issue