aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Archiver
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Archiver')
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs18
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs8
2 files changed, 20 insertions, 6 deletions
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs
index 2b61800..619550c 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs
@@ -311,6 +311,23 @@ namespace OpenSim.Region.CoreModules.World.Archiver
311 // being no copy/no mod for everyone 311 // being no copy/no mod for everyone
312 lock (part.TaskInventory) 312 lock (part.TaskInventory)
313 { 313 {
314 if (!ResolveUserUuid(part.CreatorID))
315 part.CreatorID = m_scene.RegionInfo.EstateSettings.EstateOwner;
316
317 if (!ResolveUserUuid(part.OwnerID))
318 part.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner;
319
320 if (!ResolveUserUuid(part.LastOwnerID))
321 part.LastOwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner;
322
323 // And zap any troublesome sit target information
324 part.SitTargetOrientation = new Quaternion(0, 0, 0, 1);
325 part.SitTargetPosition = new Vector3(0, 0, 0);
326
327 // Fix ownership/creator of inventory items
328 // Not doing so results in inventory items
329 // being no copy/no mod for everyone
330 part.TaskInventory.LockItemsForRead(true);
314 TaskInventoryDictionary inv = part.TaskInventory; 331 TaskInventoryDictionary inv = part.TaskInventory;
315 foreach (KeyValuePair<UUID, TaskInventoryItem> kvp in inv) 332 foreach (KeyValuePair<UUID, TaskInventoryItem> kvp in inv)
316 { 333 {
@@ -326,6 +343,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
326 if (UserManager != null) 343 if (UserManager != null)
327 UserManager.AddUser(kvp.Value.CreatorID, kvp.Value.CreatorData); 344 UserManager.AddUser(kvp.Value.CreatorID, kvp.Value.CreatorData);
328 } 345 }
346 part.TaskInventory.LockItemsForRead(false);
329 } 347 }
330 } 348 }
331 349
diff --git a/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs
index 55110dc..1eb641d 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs
@@ -253,18 +253,14 @@ namespace OpenSim.Region.CoreModules.World.Archiver
253 253
254 if (asset != null) 254 if (asset != null)
255 { 255 {
256 if (m_options.ContainsKey("verbose")) 256// m_log.DebugFormat("[ARCHIVER]: Writing asset {0}", id);
257 m_log.InfoFormat("[ARCHIVER]: Writing asset {0}", id);
258
259 m_foundAssetUuids.Add(asset.FullID); 257 m_foundAssetUuids.Add(asset.FullID);
260 258
261 m_assetsArchiver.WriteAsset(PostProcess(asset)); 259 m_assetsArchiver.WriteAsset(PostProcess(asset));
262 } 260 }
263 else 261 else
264 { 262 {
265 if (m_options.ContainsKey("verbose")) 263// m_log.DebugFormat("[ARCHIVER]: Recording asset {0} as not found", id);
266 m_log.InfoFormat("[ARCHIVER]: Recording asset {0} as not found", id);
267
268 m_notFoundAssetUuids.Add(new UUID(id)); 264 m_notFoundAssetUuids.Add(new UUID(id));
269 } 265 }
270 266