diff options
Diffstat (limited to 'OpenSim/Region')
3 files changed, 2 insertions, 29 deletions
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs index bf0ff75..a6dbaba 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs | |||
@@ -245,8 +245,6 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
245 | // Reload serialized prims | 245 | // Reload serialized prims |
246 | m_log.InfoFormat("[ARCHIVER]: Loading {0} scene objects. Please wait.", serialisedSceneObjects.Count); | 246 | m_log.InfoFormat("[ARCHIVER]: Loading {0} scene objects. Please wait.", serialisedSceneObjects.Count); |
247 | 247 | ||
248 | UUID oldTelehubUUID = m_scene.RegionInfo.RegionSettings.TelehubObject; | ||
249 | |||
250 | IRegionSerialiserModule serialiser = m_scene.RequestModuleInterface<IRegionSerialiserModule>(); | 248 | IRegionSerialiserModule serialiser = m_scene.RequestModuleInterface<IRegionSerialiserModule>(); |
251 | int sceneObjectsLoadedCount = 0; | 249 | int sceneObjectsLoadedCount = 0; |
252 | 250 | ||
@@ -268,21 +266,11 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
268 | 266 | ||
269 | SceneObjectGroup sceneObject = serialiser.DeserializeGroupFromXml2(serialisedSceneObject); | 267 | SceneObjectGroup sceneObject = serialiser.DeserializeGroupFromXml2(serialisedSceneObject); |
270 | 268 | ||
271 | bool isTelehub = (sceneObject.UUID == oldTelehubUUID); | ||
272 | |||
273 | // For now, give all incoming scene objects new uuids. This will allow scenes to be cloned | 269 | // For now, give all incoming scene objects new uuids. This will allow scenes to be cloned |
274 | // on the same region server and multiple examples a single object archive to be imported | 270 | // on the same region server and multiple examples a single object archive to be imported |
275 | // to the same scene (when this is possible). | 271 | // to the same scene (when this is possible). |
276 | sceneObject.ResetIDs(); | 272 | sceneObject.ResetIDs(); |
277 | 273 | ||
278 | if (isTelehub) | ||
279 | { | ||
280 | // Change the Telehub Object to the new UUID | ||
281 | m_scene.RegionInfo.RegionSettings.TelehubObject = sceneObject.UUID; | ||
282 | m_scene.RegionInfo.RegionSettings.Save(); | ||
283 | oldTelehubUUID = UUID.Zero; | ||
284 | } | ||
285 | |||
286 | // Try to retain the original creator/owner/lastowner if their uuid is present on this grid | 274 | // Try to retain the original creator/owner/lastowner if their uuid is present on this grid |
287 | // or creator data is present. Otherwise, use the estate owner instead. | 275 | // or creator data is present. Otherwise, use the estate owner instead. |
288 | foreach (SceneObjectPart part in sceneObject.Parts) | 276 | foreach (SceneObjectPart part in sceneObject.Parts) |
@@ -341,14 +329,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
341 | int ignoredObjects = serialisedSceneObjects.Count - sceneObjectsLoadedCount; | 329 | int ignoredObjects = serialisedSceneObjects.Count - sceneObjectsLoadedCount; |
342 | 330 | ||
343 | if (ignoredObjects > 0) | 331 | if (ignoredObjects > 0) |
344 | m_log.WarnFormat("[ARCHIVER]: Ignored {0} scene objects that already existed in the scene", ignoredObjects); | 332 | m_log.WarnFormat("[ARCHIVER]: Ignored {0} scene objects that already existed in the scene", ignoredObjects); |
345 | |||
346 | if (oldTelehubUUID != UUID.Zero) | ||
347 | { | ||
348 | m_log.WarnFormat("Telehub object not found: {0}", oldTelehubUUID); | ||
349 | m_scene.RegionInfo.RegionSettings.TelehubObject = UUID.Zero; | ||
350 | m_scene.RegionInfo.RegionSettings.ClearSpawnPoints(); | ||
351 | } | ||
352 | } | 333 | } |
353 | 334 | ||
354 | /// <summary> | 335 | /// <summary> |
@@ -524,10 +505,6 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
524 | currentRegionSettings.TerrainTexture4 = loadedRegionSettings.TerrainTexture4; | 505 | currentRegionSettings.TerrainTexture4 = loadedRegionSettings.TerrainTexture4; |
525 | currentRegionSettings.UseEstateSun = loadedRegionSettings.UseEstateSun; | 506 | currentRegionSettings.UseEstateSun = loadedRegionSettings.UseEstateSun; |
526 | currentRegionSettings.WaterHeight = loadedRegionSettings.WaterHeight; | 507 | currentRegionSettings.WaterHeight = loadedRegionSettings.WaterHeight; |
527 | currentRegionSettings.TelehubObject = loadedRegionSettings.TelehubObject; | ||
528 | currentRegionSettings.ClearSpawnPoints(); | ||
529 | foreach (SpawnPoint sp in loadedRegionSettings.SpawnPoints()) | ||
530 | currentRegionSettings.AddSpawnPoint(sp); | ||
531 | 508 | ||
532 | currentRegionSettings.Save(); | 509 | currentRegionSettings.Save(); |
533 | 510 | ||
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs index 5679ad5..eabe46e 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs | |||
@@ -328,7 +328,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
328 | /// <returns></returns> | 328 | /// <returns></returns> |
329 | public string CreateControlFile(Dictionary<string, object> options) | 329 | public string CreateControlFile(Dictionary<string, object> options) |
330 | { | 330 | { |
331 | int majorVersion = MAX_MAJOR_VERSION, minorVersion = 8; | 331 | int majorVersion = MAX_MAJOR_VERSION, minorVersion = 7; |
332 | // | 332 | // |
333 | // if (options.ContainsKey("version")) | 333 | // if (options.ContainsKey("version")) |
334 | // { | 334 | // { |
diff --git a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs index 394ca27..053c6f5 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs | |||
@@ -534,8 +534,6 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests | |||
534 | rs.TerrainTexture4 = UUID.Parse("00000000-0000-0000-0000-000000000080"); | 534 | rs.TerrainTexture4 = UUID.Parse("00000000-0000-0000-0000-000000000080"); |
535 | rs.UseEstateSun = true; | 535 | rs.UseEstateSun = true; |
536 | rs.WaterHeight = 23; | 536 | rs.WaterHeight = 23; |
537 | rs.TelehubObject = UUID.Parse("00000000-0000-0000-0000-111111111111"); | ||
538 | rs.AddSpawnPoint(SpawnPoint.Parse("1,-2,0.33")); | ||
539 | 537 | ||
540 | tar.WriteFile(ArchiveConstants.SETTINGS_PATH + "region1.xml", RegionSettingsSerializer.Serialize(rs)); | 538 | tar.WriteFile(ArchiveConstants.SETTINGS_PATH + "region1.xml", RegionSettingsSerializer.Serialize(rs)); |
541 | 539 | ||
@@ -582,8 +580,6 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests | |||
582 | Assert.That(loadedRs.TerrainTexture4, Is.EqualTo(UUID.Parse("00000000-0000-0000-0000-000000000080"))); | 580 | Assert.That(loadedRs.TerrainTexture4, Is.EqualTo(UUID.Parse("00000000-0000-0000-0000-000000000080"))); |
583 | Assert.That(loadedRs.UseEstateSun, Is.True); | 581 | Assert.That(loadedRs.UseEstateSun, Is.True); |
584 | Assert.That(loadedRs.WaterHeight, Is.EqualTo(23)); | 582 | Assert.That(loadedRs.WaterHeight, Is.EqualTo(23)); |
585 | Assert.AreEqual(UUID.Zero, loadedRs.TelehubObject); // because no object was found with the original UUID | ||
586 | Assert.AreEqual(0, loadedRs.SpawnPoints().Count); | ||
587 | } | 583 | } |
588 | 584 | ||
589 | /// <summary> | 585 | /// <summary> |