From eb63b9bbc10ee9d794c273dc01111de8ce8c8a0c Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Sun, 13 Jul 2008 00:18:29 +0000 Subject: * Actually persist restored archives to the database - wasn't actually doing this before (doh) * Not quite perfect yet --- OpenSim/Region/Environment/Scenes/Scene.cs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs') diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 1564556..fb931f4 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs @@ -1485,7 +1485,7 @@ namespace OpenSim.Region.Environment.Scenes List PrimsFromDB = m_storageManager.DataStore.LoadObjects(regionID); foreach (SceneObjectGroup group in PrimsFromDB) { - AddRestoredSceneObject(group, true); + AddRestoredSceneObject(group, true, true); SceneObjectPart rootPart = group.GetChildPart(group.UUID); rootPart.ObjectFlags &= ~(uint)LLObject.ObjectFlags.Scripted; rootPart.TrimPermissions(); @@ -1665,9 +1665,21 @@ namespace OpenSim.Region.Environment.Scenes /// Add an object into the scene that has come from storage /// /// - public bool AddRestoredSceneObject(SceneObjectGroup sceneObject, bool attachToBackup) + /// + /// If true, changes to the object will be reflected in its persisted data + /// If false, the persisted data will not be changed even if the object in the scene is changed + /// + /// + /// If true, we won't persist this object until it changes + /// If false, we'll persist this object immediately + /// + /// + /// true if the object was added, false if an object with the same uuid was already in the scene + /// + public bool AddRestoredSceneObject( + SceneObjectGroup sceneObject, bool attachToBackup, bool alreadyPersisted) { - return m_innerScene.AddRestoredSceneObject(sceneObject, attachToBackup); + return m_innerScene.AddRestoredSceneObject(sceneObject, attachToBackup, alreadyPersisted); } /// -- cgit v1.1