aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs10
1 files changed, 7 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 5b610d3..52f6c1a 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -1789,11 +1789,15 @@ namespace OpenSim.Region.Framework.Scenes
1789 if (m_rootPart.PhysActor != null && 1789 if (m_rootPart.PhysActor != null &&
1790 (!m_rootPart.PhysActor.IsPhysical)) 1790 (!m_rootPart.PhysActor.IsPhysical))
1791 { 1791 {
1792 // Possible ghost prim
1792 if (m_rootPart.PhysActor.Position != m_rootPart.GroupPosition) 1793 if (m_rootPart.PhysActor.Position != m_rootPart.GroupPosition)
1793 { 1794 {
1794 m_rootPart.PhysActor.Position = m_rootPart.GroupPosition; 1795 foreach (SceneObjectPart part in Children.Values)
1795 m_rootPart.PhysActor.Orientation = m_rootPart.RotationOffset; 1796 {
1796 m_scene.PhysicsScene.AddPhysicsActorTaint(m_rootPart.PhysActor); 1797 // Re-set physics actor positions and
1798 // orientations
1799 part.GroupPosition = m_rootPart.GroupPosition;
1800 }
1797 } 1801 }
1798 } 1802 }
1799// m_log.DebugFormat( 1803// m_log.DebugFormat(