diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 3a0e1b9..8374dcf 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -896,17 +896,21 @@ namespace OpenSim.Region.Environment.Scenes | |||
896 | 896 | ||
897 | #region Load Land | 897 | #region Load Land |
898 | 898 | ||
899 | private static readonly object _loadAllLAndMutex = new object(); | ||
899 | public void loadAllLandObjectsFromStorage() | 900 | public void loadAllLandObjectsFromStorage() |
900 | { | 901 | { |
901 | MainLog.Instance.Verbose("SCENE", "Loading land objects from storage"); | 902 | lock (_loadAllLAndMutex) |
902 | List<LandData> landData = m_storageManager.DataStore.LoadLandObjects(RegionInfo.RegionID); | ||
903 | if (landData.Count == 0) | ||
904 | { | 903 | { |
905 | m_LandManager.NoLandDataFromStorage(); | 904 | MainLog.Instance.Verbose("SCENE", "Loading land objects from storage"); |
906 | } | 905 | List<LandData> landData = m_storageManager.DataStore.LoadLandObjects(RegionInfo.RegionID); |
907 | else | 906 | if (landData.Count == 0) |
908 | { | 907 | { |
909 | m_LandManager.IncomingLandObjectsFromStorage(landData); | 908 | m_LandManager.NoLandDataFromStorage(); |
909 | } | ||
910 | else | ||
911 | { | ||
912 | m_LandManager.IncomingLandObjectsFromStorage(landData); | ||
913 | } | ||
910 | } | 914 | } |
911 | } | 915 | } |
912 | 916 | ||