diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 3509ae7..fbb18b7 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1102,11 +1102,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
1102 | // other uses need fix | 1102 | // other uses need fix |
1103 | private bool MakeRootAgent(Vector3 pos, bool isFlying) | 1103 | private bool MakeRootAgent(Vector3 pos, bool isFlying) |
1104 | { | 1104 | { |
1105 | int ts = Util.EnvironmentTickCount(); | ||
1106 | |||
1105 | lock (m_completeMovementLock) | 1107 | lock (m_completeMovementLock) |
1106 | { | 1108 | { |
1107 | if (!IsChildAgent) | 1109 | if (!IsChildAgent) |
1108 | return false; | 1110 | return false; |
1109 | 1111 | ||
1112 | m_log.DebugFormat("[MakeRootAgent] enter lock: {0}ms", Util.EnvironmentTickCountSubtract(ts)); | ||
1110 | //m_log.DebugFormat("[SCENE]: known regions in {0}: {1}", Scene.RegionInfo.RegionName, KnownChildRegionHandles.Count); | 1113 | //m_log.DebugFormat("[SCENE]: known regions in {0}: {1}", Scene.RegionInfo.RegionName, KnownChildRegionHandles.Count); |
1111 | 1114 | ||
1112 | // m_log.InfoFormat( | 1115 | // m_log.InfoFormat( |
@@ -1141,6 +1144,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
1141 | IsChildAgent = false; | 1144 | IsChildAgent = false; |
1142 | } | 1145 | } |
1143 | 1146 | ||
1147 | m_log.DebugFormat("[MakeRootAgent] out lock: {0}ms", Util.EnvironmentTickCountSubtract(ts)); | ||
1148 | |||
1144 | // Must reset this here so that a teleport to a region next to an existing region does not keep the flag | 1149 | // Must reset this here so that a teleport to a region next to an existing region does not keep the flag |
1145 | // set and prevent the close of the connection on a subsequent re-teleport. | 1150 | // set and prevent the close of the connection on a subsequent re-teleport. |
1146 | // Should not be needed if we are not trying to tell this region to close | 1151 | // Should not be needed if we are not trying to tell this region to close |
@@ -1150,9 +1155,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
1150 | if (gm != null) | 1155 | if (gm != null) |
1151 | Grouptitle = gm.GetGroupTitle(m_uuid); | 1156 | Grouptitle = gm.GetGroupTitle(m_uuid); |
1152 | 1157 | ||
1158 | m_log.DebugFormat("[MakeRootAgent] Grouptitle: {0}ms", Util.EnvironmentTickCountSubtract(ts)); | ||
1159 | |||
1153 | RegionHandle = m_scene.RegionInfo.RegionHandle; | 1160 | RegionHandle = m_scene.RegionInfo.RegionHandle; |
1154 | 1161 | ||
1155 | m_scene.EventManager.TriggerSetRootAgentScene(m_uuid, m_scene); | 1162 | m_scene.EventManager.TriggerSetRootAgentScene(m_uuid, m_scene); |
1163 | m_log.DebugFormat("[MakeRootAgent] TriggerSetRootAgentScene: {0}ms", Util.EnvironmentTickCountSubtract(ts)); | ||
1156 | 1164 | ||
1157 | 1165 | ||
1158 | if (ParentID == 0) | 1166 | if (ParentID == 0) |
@@ -1229,6 +1237,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1229 | // elsewhere anyway | 1237 | // elsewhere anyway |
1230 | // Animator.SendAnimPack(); | 1238 | // Animator.SendAnimPack(); |
1231 | 1239 | ||
1240 | m_log.DebugFormat("[MakeRootAgent] position and physical: {0}ms", Util.EnvironmentTickCountSubtract(ts)); | ||
1232 | m_scene.SwapRootAgentCount(false); | 1241 | m_scene.SwapRootAgentCount(false); |
1233 | 1242 | ||
1234 | 1243 | ||
@@ -1239,6 +1248,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1239 | MovementFlag = 0; | 1248 | MovementFlag = 0; |
1240 | 1249 | ||
1241 | m_scene.EventManager.TriggerOnMakeRootAgent(this); | 1250 | m_scene.EventManager.TriggerOnMakeRootAgent(this); |
1251 | m_log.DebugFormat("[MakeRootAgent] TriggerOnMakeRootAgent and done: {0}ms", Util.EnvironmentTickCountSubtract(ts)); | ||
1242 | 1252 | ||
1243 | return true; | 1253 | return true; |
1244 | } | 1254 | } |