From a0a8654c07a4b7855c0172b13ca0eb700c93c06b Mon Sep 17 00:00:00 2001 From: Dan Lake Date: Tue, 17 May 2011 10:31:35 -0700 Subject: [PATCH] Fix check for vanilla opensim. Should not check for border crossing on non-CM actors. --- OpenSim/Region/Framework/Scenes/Scene.cs | 41 +++++++++++++----------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index f8c173b41f..7184158a13 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs @@ -1733,26 +1733,29 @@ namespace OpenSim.Region.Framework.Scenes // Run through all ScenePresences looking for updates // Presence updates and queued object updates for each presence are sent to clients - if (IsSyncedClient()) + if (RegionSyncEnabled) { - // If it's a client manager, just send prim updates - // This will get fixed later to only send to locally logged in presences rather than all presences - // but requires pulling apart the concept of a client from the concept of a presence/avatar - ForEachScenePresence(delegate(ScenePresence sp) { sp.SendPrimUpdates(); }); - if(Frame % 20 == 0) - RegionSyncClientModule.SendCoarseLocations(); - // make border crossing work in the CMs - m_sceneGraph.ForEachScenePresence(delegate(ScenePresence sp) - { - if (!sp.IsChildAgent) - { - // Check that we have a physics actor or we're sitting on something - if (sp.ParentID == 0 && sp.PhysicsActor != null || sp.ParentID != 0) - { - sp.CheckForBorderCrossing(); - } - } - }); + if (IsSyncedClient()) + { + // If it's a client manager, just send prim updates + // This will get fixed later to only send to locally logged in presences rather than all presences + // but requires pulling apart the concept of a client from the concept of a presence/avatar + ForEachScenePresence(delegate(ScenePresence sp) { sp.SendPrimUpdates(); }); + if (Frame % 20 == 0) + RegionSyncClientModule.SendCoarseLocations(); + // make border crossing work in the CMs + m_sceneGraph.ForEachScenePresence(delegate(ScenePresence sp) + { + if (!sp.IsChildAgent) + { + // Check that we have a physics actor or we're sitting on something + if (sp.ParentID == 0 && sp.PhysicsActor != null || sp.ParentID != 0) + { + sp.CheckForBorderCrossing(); + } + } + }); + } } else {