aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs33
1 files changed, 31 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
index 465167a..19b9b22 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
@@ -426,9 +426,38 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
426 426
427 if (AssetType.Folder == assetType) 427 if (AssetType.Folder == assetType)
428 { 428 {
429 // Folders not implemented yet 429 UUID folderID = new UUID(msg.binaryBucket, 1);
430 InventoryFolderBase folder = new InventoryFolderBase();
431
432 folder.ID = folderID;
433 folder.Owner = user.ControllingClient.AgentId;
434
435 // Fetch from database
430 // 436 //
431 return; 437 if (!userInfo.QueryFolder(folder))
438 {
439 m_log.Debug("[INVENTORY TRANSFER] Can't find folder to give");
440 return;
441 }
442
443 // Get folder info
444 //
445 InventoryFolderImpl folderInfo = userInfo.RootFolder.FindFolder(folder.ID);
446 if (folderInfo == null)
447 {
448 m_log.Debug("[INVENTORY TRANSFER] Can't retrieve folder to give");
449 return;
450 }
451
452 user.ControllingClient.SendBulkUpdateInventory(folderInfo);
453
454 // Deliver message
455 //
456 user.ControllingClient.SendInstantMessage(
457 new UUID(msg.fromAgentID), msg.message,
458 new UUID(msg.toAgentID),
459 msg.fromAgentName, msg.dialog, msg.timestamp,
460 folderID, false, msg.binaryBucket);
432 } 461 }
433 else 462 else
434 { 463 {