aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs')
-rw-r--r--OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs21
1 files changed, 14 insertions, 7 deletions
diff --git a/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs b/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs
index 0aa4693..ffff37d 100644
--- a/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs
+++ b/OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs
@@ -34,6 +34,7 @@ using OpenMetaverse;
34using OpenSim.Framework; 34using OpenSim.Framework;
35using OpenSim.Region.Framework.Scenes; 35using OpenSim.Region.Framework.Scenes;
36using OpenSim.Services.Interfaces; 36using OpenSim.Services.Interfaces;
37using PermissionMask = OpenSim.Framework.PermissionMask;
37 38
38namespace OpenSim.Region.CoreModules.Agent.AssetTransaction 39namespace OpenSim.Region.CoreModules.Agent.AssetTransaction
39{ 40{
@@ -260,10 +261,10 @@ namespace OpenSim.Region.CoreModules.Agent.AssetTransaction
260 { 261 {
261 CompleteTaskItemUpdate(m_updateTaskItemData); 262 CompleteTaskItemUpdate(m_updateTaskItemData);
262 } 263 }
263// else if (m_storeLocal) 264 else if (m_asset.Local)
264// { 265 {
265// m_Scene.AssetService.Store(m_asset); 266 m_Scene.AssetService.Store(m_asset);
266// } 267 }
267 } 268 }
268 269
269 m_log.DebugFormat( 270 m_log.DebugFormat(
@@ -339,7 +340,8 @@ namespace OpenSim.Region.CoreModules.Agent.AssetTransaction
339 // to avoid a race condition when the appearance module retrieves the item to set the asset id in 340 // to avoid a race condition when the appearance module retrieves the item to set the asset id in
340 // the AvatarAppearance structure. 341 // the AvatarAppearance structure.
341 item.AssetID = m_asset.FullID; 342 item.AssetID = m_asset.FullID;
342 m_Scene.InventoryService.UpdateItem(item); 343 if (item.AssetID != UUID.Zero)
344 m_Scene.InventoryService.UpdateItem(item);
343 345
344 if (m_uploadState == UploadState.Complete) 346 if (m_uploadState == UploadState.Complete)
345 { 347 {
@@ -390,6 +392,11 @@ namespace OpenSim.Region.CoreModules.Agent.AssetTransaction
390// m_asset.FullID, item.Name, ourClient.Name); 392// m_asset.FullID, item.Name, ourClient.Name);
391 393
392 m_Scene.AssetService.Store(m_asset); 394 m_Scene.AssetService.Store(m_asset);
395 if (m_asset.FullID != UUID.Zero)
396 {
397 item.AssetID = m_asset.FullID;
398 m_Scene.InventoryService.UpdateItem(item);
399 }
393 400
394 m_transactions.RemoveXferUploader(m_transactionID); 401 m_transactions.RemoveXferUploader(m_transactionID);
395 } 402 }
@@ -424,8 +431,8 @@ namespace OpenSim.Region.CoreModules.Agent.AssetTransaction
424 item.AssetType = type; 431 item.AssetType = type;
425 item.InvType = invType; 432 item.InvType = invType;
426 item.Folder = InventFolder; 433 item.Folder = InventFolder;
427 item.BasePermissions = 0x7fffffff; 434 item.BasePermissions = (uint)(PermissionMask.All | PermissionMask.Export);
428 item.CurrentPermissions = 0x7fffffff; 435 item.CurrentPermissions = item.BasePermissions;
429 item.GroupPermissions=0; 436 item.GroupPermissions=0;
430 item.EveryOnePermissions=0; 437 item.EveryOnePermissions=0;
431 item.NextPermissions = nextPerm; 438 item.NextPermissions = nextPerm;