diff --git a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs index 55b1f4b837..d5f243c8f6 100644 --- a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs +++ b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs @@ -601,7 +601,7 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule public void SendPrimUpdate(ISceneEntity entity, PrimUpdateFlags updateFlags) { - m_log.Debug("[REGION SYNC AVATAR] SendPrimUpdate"); + //m_log.Debug("[REGION SYNC AVATAR] SendPrimUpdate"); } public virtual void AttachObject(uint localID, Quaternion rotation, byte attachPoint, UUID ownerID) diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs index 564461d315..c9a354374c 100644 --- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs @@ -2059,10 +2059,15 @@ namespace OpenSim.Region.Framework.Scenes } m_numPrim += children.Length; - //SYMMETRIC SYNC, sceneObject.AttachToScene(m_parentScene); - //sceneObject.AttachToSceneBySync(m_parentScene); - //end of SYMMETRIC SYNC, + + //Take some special care of the case of this object being an attachment + sceneObject.RootPart.SetAttachmentPoint(sceneObject.RootPart.AttachmentPoint); + if (sceneObject.IsAttachment) + { + ScenePresence avatar = m_parentScene.GetScenePresence(sceneObject.RootPart.AttachedAvatar); + sceneObject.RootPart.SetParentLocalId(avatar.LocalId); + } //SYMMETRIC SYNC, sceneObject.ScheduleGroupForFullUpdate_SyncInfoUnchanged();