aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs11
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs2
2 files changed, 10 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 7a97669..7c89e65 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3335,7 +3335,9 @@ namespace OpenSim.Region.Framework.Scenes
3335 m_sceneGridService.SendCloseChildAgentConnections(agentID, regions); 3335 m_sceneGridService.SendCloseChildAgentConnections(agentID, regions);
3336 3336
3337 } 3337 }
3338 m_log.Debug("[Scene] Beginning ClientClosed");
3338 m_eventManager.TriggerClientClosed(agentID, this); 3339 m_eventManager.TriggerClientClosed(agentID, this);
3340 m_log.Debug("[Scene] Finished ClientClosed");
3339 } 3341 }
3340 catch (NullReferenceException) 3342 catch (NullReferenceException)
3341 { 3343 {
@@ -3343,7 +3345,9 @@ namespace OpenSim.Region.Framework.Scenes
3343 // Avatar is already disposed :/ 3345 // Avatar is already disposed :/
3344 } 3346 }
3345 3347
3348 m_log.Debug("[Scene] Beginning OnRemovePresence");
3346 m_eventManager.TriggerOnRemovePresence(agentID); 3349 m_eventManager.TriggerOnRemovePresence(agentID);
3350 m_log.Debug("[Scene] Finished OnRemovePresence");
3347 ForEachClient( 3351 ForEachClient(
3348 delegate(IClientAPI client) 3352 delegate(IClientAPI client)
3349 { 3353 {
@@ -3359,8 +3363,11 @@ namespace OpenSim.Region.Framework.Scenes
3359 } 3363 }
3360 3364
3361 // Remove the avatar from the scene 3365 // Remove the avatar from the scene
3366 m_log.Debug("[Scene] Begin RemoveScenePresence");
3362 m_sceneGraph.RemoveScenePresence(agentID); 3367 m_sceneGraph.RemoveScenePresence(agentID);
3368 m_log.Debug("[Scene] Finished RemoveScenePresence. Removing the client manager");
3363 m_clientManager.Remove(agentID); 3369 m_clientManager.Remove(agentID);
3370 m_log.Debug("[Scene] Removed the client manager. Firing avatar.close");
3364 3371
3365 try 3372 try
3366 { 3373 {
@@ -3374,9 +3381,9 @@ namespace OpenSim.Region.Framework.Scenes
3374 { 3381 {
3375 m_log.Error("[SCENE] Scene.cs:RemoveClient exception: " + e.ToString()); 3382 m_log.Error("[SCENE] Scene.cs:RemoveClient exception: " + e.ToString());
3376 } 3383 }
3377 3384 m_log.Debug("[Scene] Done. Firing RemoveCircuit");
3378 m_authenticateHandler.RemoveCircuit(avatar.ControllingClient.CircuitCode); 3385 m_authenticateHandler.RemoveCircuit(avatar.ControllingClient.CircuitCode);
3379 3386 m_log.Debug("[Scene] The avatar has left the building");
3380 //m_log.InfoFormat("[SCENE] Memory pre GC {0}", System.GC.GetTotalMemory(false)); 3387 //m_log.InfoFormat("[SCENE] Memory pre GC {0}", System.GC.GetTotalMemory(false));
3381 //m_log.InfoFormat("[SCENE] Memory post GC {0}", System.GC.GetTotalMemory(true)); 3388 //m_log.InfoFormat("[SCENE] Memory post GC {0}", System.GC.GetTotalMemory(true));
3382 } 3389 }
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index fbe1da9..dd780b7 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -1827,7 +1827,7 @@ namespace OpenSim.Region.Framework.Scenes
1827 // which stops client-side interpolation of deactivated joint proxy objects. 1827 // which stops client-side interpolation of deactivated joint proxy objects.
1828 } 1828 }
1829 1829
1830 if (!UsePhysics) 1830 if (!UsePhysics && !isNew)
1831 { 1831 {
1832 // reset velocity to 0 on physics switch-off. Without that, the client thinks the 1832 // reset velocity to 0 on physics switch-off. Without that, the client thinks the
1833 // prim still has velocity and continues to interpolate its position along the old 1833 // prim still has velocity and continues to interpolate its position along the old