aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs10
1 files changed, 9 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 8034bc6..32a7935 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -1255,9 +1255,11 @@ namespace OpenSim.Region.Framework.Scenes
1255 // Stop all client threads. 1255 // Stop all client threads.
1256 ForEachScenePresence(delegate(ScenePresence avatar) { avatar.ControllingClient.Close(); }); 1256 ForEachScenePresence(delegate(ScenePresence avatar) { avatar.ControllingClient.Close(); });
1257 1257
1258 m_log.Debug("[SCENE]: Persisting changed objects"); 1258 m_log.Debug("[SCENE]: TriggerSceneShuttingDown");
1259 EventManager.TriggerSceneShuttingDown(this); 1259 EventManager.TriggerSceneShuttingDown(this);
1260 1260
1261 m_log.Debug("[SCENE]: Persisting changed objects");
1262
1261 EntityBase[] entities = GetEntities(); 1263 EntityBase[] entities = GetEntities();
1262 foreach (EntityBase entity in entities) 1264 foreach (EntityBase entity in entities)
1263 { 1265 {
@@ -1267,10 +1269,12 @@ namespace OpenSim.Region.Framework.Scenes
1267 } 1269 }
1268 } 1270 }
1269 1271
1272 m_log.Debug("[SCENE]: Graph close");
1270 m_sceneGraph.Close(); 1273 m_sceneGraph.Close();
1271 1274
1272 if (PhysicsScene != null) 1275 if (PhysicsScene != null)
1273 { 1276 {
1277 m_log.Debug("[SCENE]: Dispose Physics");
1274 PhysicsScene phys = PhysicsScene; 1278 PhysicsScene phys = PhysicsScene;
1275 // remove the physics engine from both Scene and SceneGraph 1279 // remove the physics engine from both Scene and SceneGraph
1276 PhysicsScene = null; 1280 PhysicsScene = null;
@@ -1282,6 +1286,7 @@ namespace OpenSim.Region.Framework.Scenes
1282 m_log.WarnFormat("[SCENE]: Deregister from grid failed for region {0}", Name); 1286 m_log.WarnFormat("[SCENE]: Deregister from grid failed for region {0}", Name);
1283 1287
1284 // call the base class Close method. 1288 // call the base class Close method.
1289 m_log.Debug("[SCENE]: Base close");
1285 base.Close(); 1290 base.Close();
1286 } 1291 }
1287 1292
@@ -1317,6 +1322,9 @@ namespace OpenSim.Region.Framework.Scenes
1317 } 1322 }
1318// m_lastUpdate = Util.EnvironmentTickCount(); 1323// m_lastUpdate = Util.EnvironmentTickCount();
1319 1324
1325 m_sceneGraph.PreparePhysicsSimulation();
1326
1327
1320 m_heartbeatThread 1328 m_heartbeatThread
1321 = Watchdog.StartThread( 1329 = Watchdog.StartThread(
1322 Heartbeat, string.Format("Heartbeat ({0})", RegionInfo.RegionName), ThreadPriority.Normal, false, false); 1330 Heartbeat, string.Format("Heartbeat ({0})", RegionInfo.RegionName), ThreadPriority.Normal, false, false);