diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index d4ef3d9..da8a1b8 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -4221,6 +4221,20 @@ namespace OpenSim.Region.Framework.Scenes | |||
4221 | } | 4221 | } |
4222 | 4222 | ||
4223 | childAgentUpdate.ChildAgentDataUpdate(cAgentData); | 4223 | childAgentUpdate.ChildAgentDataUpdate(cAgentData); |
4224 | |||
4225 | int ntimes = 20; | ||
4226 | if (cAgentData.SenderWantsToWaitForRoot) | ||
4227 | { | ||
4228 | while (childAgentUpdate.IsChildAgent && ntimes-- > 0) | ||
4229 | Thread.Sleep(500); | ||
4230 | |||
4231 | m_log.DebugFormat( | ||
4232 | "[SCENE PRESENCE]: Found presence {0} {1} {2} in {3} after {4} waits", | ||
4233 | childAgentUpdate.Name, childAgentUpdate.UUID, childAgentUpdate.IsChildAgent ? "child" : "root", RegionInfo.RegionName, 20 - ntimes); | ||
4234 | |||
4235 | if (childAgentUpdate.IsChildAgent) | ||
4236 | return false; | ||
4237 | } | ||
4224 | return true; | 4238 | return true; |
4225 | } | 4239 | } |
4226 | return false; | 4240 | return false; |
@@ -4278,10 +4292,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
4278 | m_log.WarnFormat( | 4292 | m_log.WarnFormat( |
4279 | "[SCENE PRESENCE]: Did not find presence with id {0} in {1} before timeout", | 4293 | "[SCENE PRESENCE]: Did not find presence with id {0} in {1} before timeout", |
4280 | agentID, RegionInfo.RegionName); | 4294 | agentID, RegionInfo.RegionName); |
4281 | // else | ||
4282 | // m_log.DebugFormat( | ||
4283 | // "[SCENE PRESENCE]: Found presence {0} {1} {2} in {3} after {4} waits", | ||
4284 | // sp.Name, sp.UUID, sp.IsChildAgent ? "child" : "root", RegionInfo.RegionName, 10 - ntimes); | ||
4285 | 4295 | ||
4286 | return sp; | 4296 | return sp; |
4287 | } | 4297 | } |