diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs index d7ab5fd..fe1c42b 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs | |||
@@ -202,16 +202,19 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
202 | // Fix ownership/creator of inventory items | 202 | // Fix ownership/creator of inventory items |
203 | // Not doing so results in inventory items | 203 | // Not doing so results in inventory items |
204 | // being no copy/no mod for everyone | 204 | // being no copy/no mod for everyone |
205 | TaskInventoryDictionary inv = part.TaskInventory; | 205 | lock (part.TaskInventory) |
206 | foreach (KeyValuePair<UUID, TaskInventoryItem> kvp in inv) | ||
207 | { | 206 | { |
208 | if (!ResolveUserUuid(kvp.Value.OwnerID)) | 207 | TaskInventoryDictionary inv = part.TaskInventory; |
208 | foreach (KeyValuePair<UUID, TaskInventoryItem> kvp in inv) | ||
209 | { | 209 | { |
210 | kvp.Value.OwnerID = masterAvatarId; | 210 | if (!ResolveUserUuid(kvp.Value.OwnerID)) |
211 | } | 211 | { |
212 | if (!ResolveUserUuid(kvp.Value.CreatorID)) | 212 | kvp.Value.OwnerID = masterAvatarId; |
213 | { | 213 | } |
214 | kvp.Value.CreatorID = masterAvatarId; | 214 | if (!ResolveUserUuid(kvp.Value.CreatorID)) |
215 | { | ||
216 | kvp.Value.CreatorID = masterAvatarId; | ||
217 | } | ||
215 | } | 218 | } |
216 | } | 219 | } |
217 | } | 220 | } |