aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/InnerScene.cs
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-07-13 00:18:29 +0000
committerJustin Clarke Casey2008-07-13 00:18:29 +0000
commiteb63b9bbc10ee9d794c273dc01111de8ce8c8a0c (patch)
treee744381547466429d3001955b62dd4f2e28c7983 /OpenSim/Region/Environment/Scenes/InnerScene.cs
parent* Elminate most of the debugging log output from the archive commands (diff)
downloadopensim-SC_OLD-eb63b9bbc10ee9d794c273dc01111de8ce8c8a0c.zip
opensim-SC_OLD-eb63b9bbc10ee9d794c273dc01111de8ce8c8a0c.tar.gz
opensim-SC_OLD-eb63b9bbc10ee9d794c273dc01111de8ce8c8a0c.tar.bz2
opensim-SC_OLD-eb63b9bbc10ee9d794c273dc01111de8ce8c8a0c.tar.xz
* Actually persist restored archives to the database - wasn't actually doing this before (doh)
* Not quite perfect yet
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Environment/Scenes/InnerScene.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/InnerScene.cs b/OpenSim/Region/Environment/Scenes/InnerScene.cs
index abd3387..7e8259f 100644
--- a/OpenSim/Region/Environment/Scenes/InnerScene.cs
+++ b/OpenSim/Region/Environment/Scenes/InnerScene.cs
@@ -196,10 +196,15 @@ namespace OpenSim.Region.Environment.Scenes
196 /// If true, changes to the object will be reflected in its persisted data 196 /// If true, changes to the object will be reflected in its persisted data
197 /// If false, the persisted data will not be changed even if the object in the scene is changed 197 /// If false, the persisted data will not be changed even if the object in the scene is changed
198 /// </param> 198 /// </param>
199 /// <param name="alreadyPersisted">
200 /// If true, we won't persist this object until it changes
201 /// If false, we'll persist this object immediately
202 /// </param>
199 /// <returns> 203 /// <returns>
200 /// true if the object was added, false if an object with the same uuid was already in the scene 204 /// true if the object was added, false if an object with the same uuid was already in the scene
201 /// </returns> 205 /// </returns>
202 protected internal bool AddRestoredSceneObject(SceneObjectGroup sceneObject, bool attachToBackup) 206 protected internal bool AddRestoredSceneObject(
207 SceneObjectGroup sceneObject, bool attachToBackup, bool alreadyPersisted)
203 { 208 {
204 sceneObject.RegionHandle = m_regInfo.RegionHandle; 209 sceneObject.RegionHandle = m_regInfo.RegionHandle;
205 sceneObject.SetScene(m_parentScene); 210 sceneObject.SetScene(m_parentScene);
@@ -211,6 +216,12 @@ namespace OpenSim.Region.Environment.Scenes
211 216
212 sceneObject.UpdateParentIDs(); 217 sceneObject.UpdateParentIDs();
213 218
219 if (!alreadyPersisted)
220 {
221 sceneObject.ForceInventoryPersistence();
222 sceneObject.HasGroupChanged = true;
223 }
224
214 return AddSceneObject(sceneObject, attachToBackup); 225 return AddSceneObject(sceneObject, attachToBackup);
215 } 226 }
216 227