aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Framework/IClientAPI.cs3
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs7
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs9
-rw-r--r--OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs4
4 files changed, 11 insertions, 12 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index 47e79d1..d8ccc89 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -53,8 +53,7 @@ namespace OpenSim.Framework
53 53
54 public delegate ISceneEntity RezSingleAttachmentFromInv(IClientAPI remoteClient, UUID itemID, uint AttachmentPt); 54 public delegate ISceneEntity RezSingleAttachmentFromInv(IClientAPI remoteClient, UUID itemID, uint AttachmentPt);
55 55
56 public delegate void RezMultipleAttachmentsFromInv(IClientAPI remoteClient, RezMultipleAttachmentsFromInvPacket.HeaderDataBlock header, 56 public delegate void RezMultipleAttachmentsFromInv(IClientAPI remoteClient, List<KeyValuePair<UUID, uint>> rezlist );
57 RezMultipleAttachmentsFromInvPacket.ObjectDataBlock[] objects);
58 57
59 public delegate void ObjectAttach( 58 public delegate void ObjectAttach(
60 IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, bool silent); 59 IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, bool silent);
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index ce2ff86..29dce17 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -6079,9 +6079,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
6079 RezMultipleAttachmentsFromInv handlerRezMultipleAttachments = OnRezMultipleAttachmentsFromInv; 6079 RezMultipleAttachmentsFromInv handlerRezMultipleAttachments = OnRezMultipleAttachmentsFromInv;
6080 if (handlerRezMultipleAttachments != null) 6080 if (handlerRezMultipleAttachments != null)
6081 { 6081 {
6082 RezMultipleAttachmentsFromInvPacket rez = (RezMultipleAttachmentsFromInvPacket)Pack; 6082 List<KeyValuePair<UUID, uint>> rezlist = new List<KeyValuePair<UUID, uint>>();
6083 handlerRezMultipleAttachments(this, rez.HeaderData, 6083 foreach (RezMultipleAttachmentsFromInvPacket.ObjectDataBlock obj in ((RezMultipleAttachmentsFromInvPacket)Pack).ObjectData)
6084 rez.ObjectData); 6084 rezlist.Add(new KeyValuePair<UUID, uint>(obj.ItemID, obj.AttachmentPt));
6085 handlerRezMultipleAttachments(this, rezlist);
6085 } 6086 }
6086 6087
6087 return true; 6088 return true;
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index 8757251..48695a4 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -360,8 +360,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
360 360
361 public void RezMultipleAttachmentsFromInventory( 361 public void RezMultipleAttachmentsFromInventory(
362 IClientAPI remoteClient, 362 IClientAPI remoteClient,
363 RezMultipleAttachmentsFromInvPacket.HeaderDataBlock header, 363 List<KeyValuePair<UUID, uint>> rezlist)
364 RezMultipleAttachmentsFromInvPacket.ObjectDataBlock[] objects)
365 { 364 {
366 if (!Enabled) 365 if (!Enabled)
367 return; 366 return;
@@ -380,9 +379,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
380 { 379 {
381// m_log.DebugFormat("[ATTACHMENTS MODULE]: Rezzing multiple attachments from inventory for {0}", sp.Name); 380// m_log.DebugFormat("[ATTACHMENTS MODULE]: Rezzing multiple attachments from inventory for {0}", sp.Name);
382 381
383 foreach (RezMultipleAttachmentsFromInvPacket.ObjectDataBlock obj in objects) 382 foreach (KeyValuePair<UUID, uint> rez in rezlist)
384 { 383 {
385 RezSingleAttachmentFromInventory(sp, obj.ItemID, obj.AttachmentPt); 384 RezSingleAttachmentFromInventory(sp, rez.Key, rez.Value);
386 } 385 }
387 } 386 }
388 } 387 }
@@ -941,4 +940,4 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
941 return item; 940 return item;
942 } 941 }
943 } 942 }
944} \ No newline at end of file 943}
diff --git a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
index 5ffbec8..8d3366c 100644
--- a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
@@ -26,6 +26,7 @@
26 */ 26 */
27 27
28using System; 28using System;
29using System.Collections.Generic;
29using OpenMetaverse; 30using OpenMetaverse;
30using OpenMetaverse.Packets; 31using OpenMetaverse.Packets;
31using OpenSim.Framework; 32using OpenSim.Framework;
@@ -104,8 +105,7 @@ namespace OpenSim.Region.Framework.Interfaces
104 /// <param name="objects"></param> 105 /// <param name="objects"></param>
105 void RezMultipleAttachmentsFromInventory( 106 void RezMultipleAttachmentsFromInventory(
106 IClientAPI remoteClient, 107 IClientAPI remoteClient,
107 RezMultipleAttachmentsFromInvPacket.HeaderDataBlock header, 108 List<KeyValuePair<UUID, uint>> rezlist);
108 RezMultipleAttachmentsFromInvPacket.ObjectDataBlock[] objects);
109 109
110 /// <summary> 110 /// <summary>
111 /// Detach an object from the avatar. 111 /// Detach an object from the avatar.