diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs index 46da5a9..5d7f25c 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs | |||
@@ -149,10 +149,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
149 | private void OnInstantMessage(IClientAPI client, GridInstantMessage im) | 149 | private void OnInstantMessage(IClientAPI client, GridInstantMessage im) |
150 | { | 150 | { |
151 | // m_log.DebugFormat( | 151 | // m_log.DebugFormat( |
152 | // "[INVENTORY TRANSFER]: {0} IM type received from client {1}. From={2} ({3}), To={4}", | 152 | // "[INVENTORY TRANSFER]: {0} IM type received from client {1}. From={2} ({3}), To={4}", |
153 | // (InstantMessageDialog)im.dialog, client.Name, | 153 | // (InstantMessageDialog)im.dialog, client.Name, |
154 | // im.fromAgentID, im.fromAgentName, im.toAgentID); | 154 | // im.fromAgentID, im.fromAgentName, im.toAgentID); |
155 | 155 | ||
156 | Scene scene = FindClientScene(client.AgentId); | 156 | Scene scene = FindClientScene(client.AgentId); |
157 | 157 | ||
158 | if (scene == null) // Something seriously wrong here. | 158 | if (scene == null) // Something seriously wrong here. |
@@ -164,31 +164,31 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
164 | 164 | ||
165 | if (im.binaryBucket.Length < 17) // Invalid | 165 | if (im.binaryBucket.Length < 17) // Invalid |
166 | return; | 166 | return; |
167 | 167 | ||
168 | UUID recipientID = new UUID(im.toAgentID); | 168 | UUID recipientID = new UUID(im.toAgentID); |
169 | ScenePresence user = scene.GetScenePresence(recipientID); | 169 | ScenePresence user = scene.GetScenePresence(recipientID); |
170 | UUID copyID; | 170 | UUID copyID; |
171 | 171 | ||
172 | // First byte is the asset type | 172 | // First byte is the asset type |
173 | AssetType assetType = (AssetType)im.binaryBucket[0]; | 173 | AssetType assetType = (AssetType)im.binaryBucket[0]; |
174 | 174 | ||
175 | if (AssetType.Folder == assetType) | 175 | if (AssetType.Folder == assetType) |
176 | { | 176 | { |
177 | UUID folderID = new UUID(im.binaryBucket, 1); | 177 | UUID folderID = new UUID(im.binaryBucket, 1); |
178 | 178 | ||
179 | m_log.DebugFormat( | 179 | m_log.DebugFormat( |
180 | "[INVENTORY TRANSFER]: Inserting original folder {0} into agent {1}'s inventory", | 180 | "[INVENTORY TRANSFER]: Inserting original folder {0} into agent {1}'s inventory", |
181 | folderID, new UUID(im.toAgentID)); | 181 | folderID, new UUID(im.toAgentID)); |
182 | 182 | ||
183 | InventoryFolderBase folderCopy | 183 | InventoryFolderBase folderCopy |
184 | = scene.GiveInventoryFolder(client, recipientID, client.AgentId, folderID, UUID.Zero); | 184 | = scene.GiveInventoryFolder(client, recipientID, client.AgentId, folderID, UUID.Zero); |
185 | 185 | ||
186 | if (folderCopy == null) | 186 | if (folderCopy == null) |
187 | { | 187 | { |
188 | client.SendAgentAlertMessage("Can't find folder to give. Nothing given.", false); | 188 | client.SendAgentAlertMessage("Can't find folder to give. Nothing given.", false); |
189 | return; | 189 | return; |
190 | } | 190 | } |
191 | 191 | ||
192 | // The outgoing binary bucket should contain only the byte which signals an asset folder is | 192 | // The outgoing binary bucket should contain only the byte which signals an asset folder is |
193 | // being copied and the following bytes for the copied folder's UUID | 193 | // being copied and the following bytes for the copied folder's UUID |
194 | copyID = folderCopy.ID; | 194 | copyID = folderCopy.ID; |
@@ -196,7 +196,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
196 | im.binaryBucket = new byte[1 + copyIDBytes.Length]; | 196 | im.binaryBucket = new byte[1 + copyIDBytes.Length]; |
197 | im.binaryBucket[0] = (byte)AssetType.Folder; | 197 | im.binaryBucket[0] = (byte)AssetType.Folder; |
198 | Array.Copy(copyIDBytes, 0, im.binaryBucket, 1, copyIDBytes.Length); | 198 | Array.Copy(copyIDBytes, 0, im.binaryBucket, 1, copyIDBytes.Length); |
199 | 199 | ||
200 | if (user != null) | 200 | if (user != null) |
201 | user.ControllingClient.SendBulkUpdateInventory(folderCopy); | 201 | user.ControllingClient.SendBulkUpdateInventory(folderCopy); |
202 | 202 | ||
@@ -225,10 +225,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
225 | client.SendAgentAlertMessage(message, false); | 225 | client.SendAgentAlertMessage(message, false); |
226 | return; | 226 | return; |
227 | } | 227 | } |
228 | 228 | ||
229 | copyID = itemCopy.ID; | 229 | copyID = itemCopy.ID; |
230 | Array.Copy(copyID.GetBytes(), 0, im.binaryBucket, 1, 16); | 230 | Array.Copy(copyID.GetBytes(), 0, im.binaryBucket, 1, 16); |
231 | 231 | ||
232 | if (user != null) | 232 | if (user != null) |
233 | user.ControllingClient.SendBulkUpdateInventory(itemCopy); | 233 | user.ControllingClient.SendBulkUpdateInventory(itemCopy); |
234 | 234 | ||
@@ -253,7 +253,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
253 | else | 253 | else |
254 | { | 254 | { |
255 | if (m_TransferModule != null) | 255 | if (m_TransferModule != null) |
256 | m_TransferModule.SendInstantMessage(im, delegate(bool success) | 256 | m_TransferModule.SendInstantMessage(im, delegate(bool success) |
257 | { | 257 | { |
258 | if (!success) | 258 | if (!success) |
259 | client.SendAlertMessage("User not online. Inventory has been saved"); | 259 | client.SendAlertMessage("User not online. Inventory has been saved"); |
@@ -308,8 +308,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
308 | } | 308 | } |
309 | 309 | ||
310 | // XXX: This code was placed here to try and accomodate RLV which moves given folders named #RLV/~<name> | 310 | // XXX: This code was placed here to try and accomodate RLV which moves given folders named #RLV/~<name> |
311 | // to the requested folder, which in this case is #RLV. However, it is the viewer that appears to be | 311 | // to the requested folder, which in this case is #RLV. However, it is the viewer that appears to be |
312 | // response from renaming the #RLV/~example folder to ~example. For some reason this is not yet | 312 | // response from renaming the #RLV/~example folder to ~example. For some reason this is not yet |
313 | // happening, possibly because we are not sending the correct inventory update messages with the correct | 313 | // happening, possibly because we are not sending the correct inventory update messages with the correct |
314 | // transaction IDs | 314 | // transaction IDs |
315 | else if (im.dialog == (byte) InstantMessageDialog.TaskInventoryAccepted) | 315 | else if (im.dialog == (byte) InstantMessageDialog.TaskInventoryAccepted) |
@@ -380,7 +380,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
380 | InventoryItemBase item = invService.GetItem(client.AgentId, inventoryID); | 380 | InventoryItemBase item = invService.GetItem(client.AgentId, inventoryID); |
381 | InventoryFolderBase folder = null; | 381 | InventoryFolderBase folder = null; |
382 | UUID? previousParentFolderID = null; | 382 | UUID? previousParentFolderID = null; |
383 | 383 | ||
384 | if (item != null && trashFolder != null) | 384 | if (item != null && trashFolder != null) |
385 | { | 385 | { |
386 | previousParentFolderID = item.Folder; | 386 | previousParentFolderID = item.Folder; |
@@ -404,18 +404,18 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
404 | client.SendBulkUpdateInventory(folder); | 404 | client.SendBulkUpdateInventory(folder); |
405 | } | 405 | } |
406 | } | 406 | } |
407 | 407 | ||
408 | if ((null == item && null == folder) | null == trashFolder) | 408 | if ((null == item && null == folder) | null == trashFolder) |
409 | { | 409 | { |
410 | string reason = String.Empty; | 410 | string reason = String.Empty; |
411 | 411 | ||
412 | if (trashFolder == null) | 412 | if (trashFolder == null) |
413 | reason += " Trash folder not found."; | 413 | reason += " Trash folder not found."; |
414 | if (item == null) | 414 | if (item == null) |
415 | reason += " Item not found."; | 415 | reason += " Item not found."; |
416 | if (folder == null) | 416 | if (folder == null) |
417 | reason += " Folder not found."; | 417 | reason += " Folder not found."; |
418 | 418 | ||
419 | client.SendAgentAlertMessage("Unable to delete "+ | 419 | client.SendAgentAlertMessage("Unable to delete "+ |
420 | "received inventory" + reason, false); | 420 | "received inventory" + reason, false); |
421 | } | 421 | } |
@@ -471,12 +471,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
471 | { | 471 | { |
472 | if (im.binaryBucket.Length < 17) // Invalid | 472 | if (im.binaryBucket.Length < 17) // Invalid |
473 | return; | 473 | return; |
474 | 474 | ||
475 | UUID recipientID = new UUID(im.toAgentID); | 475 | UUID recipientID = new UUID(im.toAgentID); |
476 | 476 | ||
477 | // First byte is the asset type | 477 | // First byte is the asset type |
478 | AssetType assetType = (AssetType)im.binaryBucket[0]; | 478 | AssetType assetType = (AssetType)im.binaryBucket[0]; |
479 | 479 | ||
480 | if (AssetType.Folder == assetType) | 480 | if (AssetType.Folder == assetType) |
481 | { | 481 | { |
482 | UUID folderID = new UUID(im.binaryBucket, 1); | 482 | UUID folderID = new UUID(im.binaryBucket, 1); |
@@ -505,12 +505,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer | |||
505 | { | 505 | { |
506 | if (im.binaryBucket.Length < 1) // Invalid | 506 | if (im.binaryBucket.Length < 1) // Invalid |
507 | return; | 507 | return; |
508 | 508 | ||
509 | UUID recipientID = new UUID(im.toAgentID); | 509 | UUID recipientID = new UUID(im.toAgentID); |
510 | 510 | ||
511 | // Bucket is the asset type | 511 | // Bucket is the asset type |
512 | AssetType assetType = (AssetType)im.binaryBucket[0]; | 512 | AssetType assetType = (AssetType)im.binaryBucket[0]; |
513 | 513 | ||
514 | if (AssetType.Folder == assetType) | 514 | if (AssetType.Folder == assetType) |
515 | { | 515 | { |
516 | UUID folderID = new UUID(im.imSessionID); | 516 | UUID folderID = new UUID(im.imSessionID); |