Change locking to not mix explicit Monitor.* calls with lock()
parent
f2891e7738
commit
da414fd509
|
@ -1562,7 +1562,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
/// <param name="childPrims"></param>
|
/// <param name="childPrims"></param>
|
||||||
protected internal void LinkObjects(IClientAPI client, uint parentPrimId, List<uint> childPrimIds)
|
protected internal void LinkObjects(IClientAPI client, uint parentPrimId, List<uint> childPrimIds)
|
||||||
{
|
{
|
||||||
lock (m_updateLock)
|
Monitor.Enter(m_updateLock);
|
||||||
|
try
|
||||||
{
|
{
|
||||||
SceneObjectGroup parentGroup = GetGroupByPrim(parentPrimId);
|
SceneObjectGroup parentGroup = GetGroupByPrim(parentPrimId);
|
||||||
|
|
||||||
|
@ -1617,6 +1618,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
Monitor.Exit(m_updateLock);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -1630,7 +1635,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
protected internal void DelinkObjects(List<uint> primIds, bool sendEvents)
|
protected internal void DelinkObjects(List<uint> primIds, bool sendEvents)
|
||||||
{
|
{
|
||||||
lock (m_updateLock)
|
Monitor.Enter(m_updateLock);
|
||||||
|
try
|
||||||
{
|
{
|
||||||
List<SceneObjectPart> childParts = new List<SceneObjectPart>();
|
List<SceneObjectPart> childParts = new List<SceneObjectPart>();
|
||||||
List<SceneObjectPart> rootParts = new List<SceneObjectPart>();
|
List<SceneObjectPart> rootParts = new List<SceneObjectPart>();
|
||||||
|
@ -1737,6 +1743,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
g.ScheduleGroupForFullUpdate();
|
g.ScheduleGroupForFullUpdate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
Monitor.Exit(m_updateLock);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected internal void MakeObjectSearchable(IClientAPI remoteClient, bool IncludeInSearch, uint localID)
|
protected internal void MakeObjectSearchable(IClientAPI remoteClient, bool IncludeInSearch, uint localID)
|
||||||
|
|
Loading…
Reference in New Issue