Actually put IsChildAgent = true inside the lock, otherwise there is still a small window for race conditions on duplicate CompleteMovement calls

master-beforevarregion
Justin Clark-Casey (justincc) 2014-01-16 23:31:50 +00:00
parent 3ffd90496a
commit 3bc669ffc7
1 changed files with 3 additions and 1 deletions

View File

@ -933,10 +933,12 @@ namespace OpenSim.Region.Framework.Scenes
//m_log.DebugFormat("[SCENE]: known regions in {0}: {1}", Scene.RegionInfo.RegionName, KnownChildRegionHandles.Count);
lock (m_completeMovementLock)
{
if (!IsChildAgent)
return false;
IsChildAgent = false;
IsChildAgent = false;
}
// Must reset this here so that a teleport to a region next to an existing region does not keep the flag
// set and prevent the close of the connection on a subsequent re-teleport.