diff options
author | Diva Canto | 2015-09-11 09:48:51 -0700 |
---|---|---|
committer | Diva Canto | 2015-09-11 09:48:51 -0700 |
commit | 29aaf5564f52c0c532910764e4218eb6891184ef (patch) | |
tree | 6afb14242bcc0478269ff12909991686af7b10dd /OpenSim/Region/CoreModules/Agent | |
parent | Typos in comments (diff) | |
download | opensim-SC-29aaf5564f52c0c532910764e4218eb6891184ef.zip opensim-SC-29aaf5564f52c0c532910764e4218eb6891184ef.tar.gz opensim-SC-29aaf5564f52c0c532910764e4218eb6891184ef.tar.bz2 opensim-SC-29aaf5564f52c0c532910764e4218eb6891184ef.tar.xz |
Mantis #7720: AssetXferUploader was setting AssetID to UUID.Zero. Before that wouldn't matter (item would be a terminal object) but with the introduction of the item cache, it matters, because the object in the cache was being modified to have AssetID=UUID.Zero. Also keeping the item cache consistent when item properties change.
Diffstat (limited to 'OpenSim/Region/CoreModules/Agent')
-rw-r--r-- | OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs b/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs index 49a96f4..5143204 100644 --- a/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs +++ b/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs | |||
@@ -319,12 +319,14 @@ namespace OpenSim.Region.CoreModules.Agent.AssetTransaction | |||
319 | m_asset.Description = item.Description; | 319 | m_asset.Description = item.Description; |
320 | m_asset.Type = (sbyte)item.AssetType; | 320 | m_asset.Type = (sbyte)item.AssetType; |
321 | 321 | ||
322 | // We must always store the item at this point even if the asset hasn't finished uploading, in order | 322 | if (m_asset.FullID != UUID.Zero) |
323 | // to avoid a race condition when the appearance module retrieves the item to set the asset id in | 323 | { |
324 | // the AvatarAppearance structure. | 324 | // We must always store the item at this point even if the asset hasn't finished uploading, in order |
325 | item.AssetID = m_asset.FullID; | 325 | // to avoid a race condition when the appearance module retrieves the item to set the asset id in |
326 | if (item.AssetID != UUID.Zero) | 326 | // the AvatarAppearance structure. |
327 | item.AssetID = m_asset.FullID; | ||
327 | m_Scene.InventoryService.UpdateItem(item); | 328 | m_Scene.InventoryService.UpdateItem(item); |
329 | } | ||
328 | 330 | ||
329 | if (m_uploadState == UploadState.Complete) | 331 | if (m_uploadState == UploadState.Complete) |
330 | { | 332 | { |