aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorCharles Krinke2009-07-02 16:02:18 +0000
committerCharles Krinke2009-07-02 16:02:18 +0000
commit8344df886b9bd77937ce53f3977c3f062f1e8602 (patch)
tree2e43eb376900edc6c3f76ac37a5577f884db7b43
parentmake methods surounding backup virtual so they could be override for server s... (diff)
downloadopensim-SC_OLD-8344df886b9bd77937ce53f3977c3f062f1e8602.zip
opensim-SC_OLD-8344df886b9bd77937ce53f3977c3f062f1e8602.tar.gz
opensim-SC_OLD-8344df886b9bd77937ce53f3977c3f062f1e8602.tar.bz2
opensim-SC_OLD-8344df886b9bd77937ce53f3977c3f062f1e8602.tar.xz
Thank you kindly, AnakinLohner, for a patch that addresses:
The patch included updates the root and child prims' AttchedAvatar with the right UUID. It also cleans the AttachedAvatar properties for the root and child prims on Drop and Detach
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs18
1 files changed, 18 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 46ce8fd..55ee460 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -640,6 +640,12 @@ namespace OpenSim.Region.Framework.Scenes
640 640
641 m_rootPart.AttachedAvatar = agentID; 641 m_rootPart.AttachedAvatar = agentID;
642 642
643 //Anakin Lohner bug #3839
644 foreach (SceneObjectPart p in m_parts.Values)
645 {
646 p.AttachedAvatar = agentID;
647 }
648
643 if (m_rootPart.PhysActor != null) 649 if (m_rootPart.PhysActor != null)
644 { 650 {
645 m_scene.PhysicsScene.RemovePrim(m_rootPart.PhysActor); 651 m_scene.PhysicsScene.RemovePrim(m_rootPart.PhysActor);
@@ -702,6 +708,12 @@ namespace OpenSim.Region.Framework.Scenes
702 708
703 AbsolutePosition = detachedpos; 709 AbsolutePosition = detachedpos;
704 m_rootPart.AttachedAvatar = UUID.Zero; 710 m_rootPart.AttachedAvatar = UUID.Zero;
711 //Anakin Lohner bug #3839
712 foreach (SceneObjectPart p in m_parts.Values)
713 {
714 p.AttachedAvatar = UUID.Zero;
715 }
716
705 m_rootPart.SetParentLocalId(0); 717 m_rootPart.SetParentLocalId(0);
706 SetAttachmentPoint((byte)0); 718 SetAttachmentPoint((byte)0);
707 m_rootPart.ApplyPhysics(m_rootPart.GetEffectiveObjectFlags(), m_rootPart.VolumeDetectActive, m_scene.m_physicalPrim); 719 m_rootPart.ApplyPhysics(m_rootPart.GetEffectiveObjectFlags(), m_rootPart.VolumeDetectActive, m_scene.m_physicalPrim);
@@ -725,6 +737,12 @@ namespace OpenSim.Region.Framework.Scenes
725 } 737 }
726 738
727 m_rootPart.AttachedAvatar = UUID.Zero; 739 m_rootPart.AttachedAvatar = UUID.Zero;
740 //Anakin Lohner bug #3839
741 foreach (SceneObjectPart p in m_parts.Values)
742 {
743 p.AttachedAvatar = UUID.Zero;
744 }
745
728 m_rootPart.SetParentLocalId(0); 746 m_rootPart.SetParentLocalId(0);
729 //m_rootPart.SetAttachmentPoint((byte)0); 747 //m_rootPart.SetAttachmentPoint((byte)0);
730 m_rootPart.IsAttachment = false; 748 m_rootPart.IsAttachment = false;