diff options
author | Melanie | 2010-07-17 07:19:58 +0100 |
---|---|---|
committer | Melanie | 2010-07-20 23:24:04 +0100 |
commit | ac1a34714dec8745ec78bf530d74ada0943c6758 (patch) | |
tree | c2d3a6a5304a5b4d9a8711078d94b26a960d0f8a | |
parent | Restore lines that have been removed due to previous merge conflict. (diff) | |
download | opensim-SC_OLD-ac1a34714dec8745ec78bf530d74ada0943c6758.zip opensim-SC_OLD-ac1a34714dec8745ec78bf530d74ada0943c6758.tar.gz opensim-SC_OLD-ac1a34714dec8745ec78bf530d74ada0943c6758.tar.bz2 opensim-SC_OLD-ac1a34714dec8745ec78bf530d74ada0943c6758.tar.xz |
Allow Megaregions to start properly after an unclean shutdown
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index b0f4ac0..9141d44 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -136,6 +136,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
136 | 136 | ||
137 | protected SceneCommunicationService m_sceneGridService; | 137 | protected SceneCommunicationService m_sceneGridService; |
138 | public bool LoginsDisabled = true; | 138 | public bool LoginsDisabled = true; |
139 | public bool LoadingPrims = false; | ||
139 | 140 | ||
140 | public new float TimeDilation | 141 | public new float TimeDilation |
141 | { | 142 | { |
@@ -1877,6 +1878,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1877 | /// </summary> | 1878 | /// </summary> |
1878 | public virtual void LoadPrimsFromStorage(UUID regionID) | 1879 | public virtual void LoadPrimsFromStorage(UUID regionID) |
1879 | { | 1880 | { |
1881 | LoadingPrims = true; | ||
1880 | m_log.Info("[SCENE]: Loading objects from datastore"); | 1882 | m_log.Info("[SCENE]: Loading objects from datastore"); |
1881 | 1883 | ||
1882 | List<SceneObjectGroup> PrimsFromDB = m_storageManager.DataStore.LoadObjects(regionID); | 1884 | List<SceneObjectGroup> PrimsFromDB = m_storageManager.DataStore.LoadObjects(regionID); |
@@ -1900,6 +1902,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1900 | } | 1902 | } |
1901 | 1903 | ||
1902 | m_log.Info("[SCENE]: Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)"); | 1904 | m_log.Info("[SCENE]: Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)"); |
1905 | LoadingPrims = false; | ||
1903 | } | 1906 | } |
1904 | 1907 | ||
1905 | 1908 | ||
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 1ca390a..17275d0 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -294,7 +294,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
294 | 294 | ||
295 | if ((m_scene.TestBorderCross(val - Vector3.UnitX, Cardinals.E) || m_scene.TestBorderCross(val + Vector3.UnitX, Cardinals.W) | 295 | if ((m_scene.TestBorderCross(val - Vector3.UnitX, Cardinals.E) || m_scene.TestBorderCross(val + Vector3.UnitX, Cardinals.W) |
296 | || m_scene.TestBorderCross(val - Vector3.UnitY, Cardinals.N) || m_scene.TestBorderCross(val + Vector3.UnitY, Cardinals.S)) | 296 | || m_scene.TestBorderCross(val - Vector3.UnitY, Cardinals.N) || m_scene.TestBorderCross(val + Vector3.UnitY, Cardinals.S)) |
297 | && !IsAttachmentCheckFull()) | 297 | && !IsAttachmentCheckFull() && (!m_scene.LoadingPrims)) |
298 | { | 298 | { |
299 | m_scene.CrossPrimGroupIntoNewRegion(val, this, true); | 299 | m_scene.CrossPrimGroupIntoNewRegion(val, this, true); |
300 | } | 300 | } |