aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs12
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs2
2 files changed, 10 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index e89368a..9c1154b 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -178,12 +178,16 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
178 UUID itemID = UUID.Zero; 178 UUID itemID = UUID.Zero;
179 if (sp != null) 179 if (sp != null)
180 { 180 {
181 foreach (SceneObjectGroup grp in sp.GetAttachments(AttachmentPt)) 181 foreach(SceneObjectGroup grp in sp.Attachments)
182 { 182 {
183 itemID = grp.GetFromItemID(); 183 if (grp.GetAttachmentPoint() == (byte)AttachmentPt)
184 if (itemID != UUID.Zero) 184 {
185 DetachSingleAttachmentToInv(itemID, remoteClient); 185 itemID = grp.GetFromItemID();
186 break;
187 }
186 } 188 }
189 if (itemID != UUID.Zero)
190 DetachSingleAttachmentToInv(itemID, remoteClient);
187 } 191 }
188 192
189 if (group.GetFromItemID() == UUID.Zero) 193 if (group.GetFromItemID() == UUID.Zero)
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
index 485e05a..b5cab84 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
@@ -459,6 +459,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
459 // Now let's make it officially a child agent 459 // Now let's make it officially a child agent
460 sp.MakeChildAgent(); 460 sp.MakeChildAgent();
461 461
462 sp.Scene.CleanDroppedAttachments();
463
462 // Finally, let's close this previously-known-as-root agent, when the jump is outside the view zone 464 // Finally, let's close this previously-known-as-root agent, when the jump is outside the view zone
463 465
464 if (NeedsClosing(oldRegionX, newRegionX, oldRegionY, newRegionY, reg)) 466 if (NeedsClosing(oldRegionX, newRegionX, oldRegionY, newRegionY, reg))