diff options
author | Melanie Thielker | 2010-09-14 19:41:53 +0200 |
---|---|---|
committer | Melanie Thielker | 2010-09-14 19:41:53 +0200 |
commit | d299f8b55cb0e3848dbcbb941a5789d52459bc44 (patch) | |
tree | 1dd419d9dc1f3445cd5150ae17bc0aeb86e4e8b7 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |
parent | LSL compatibility: Don't throw an exception if an invalid key is passed to l... (diff) | |
download | opensim-SC-d299f8b55cb0e3848dbcbb941a5789d52459bc44.zip opensim-SC-d299f8b55cb0e3848dbcbb941a5789d52459bc44.tar.gz opensim-SC-d299f8b55cb0e3848dbcbb941a5789d52459bc44.tar.bz2 opensim-SC-d299f8b55cb0e3848dbcbb941a5789d52459bc44.tar.xz |
Fix a small left over buglet and also add checking of the physics actor
position on backup. This way, ant object that has been moved will be
checked for ghost prims as soon as it is persisted.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index a952508..37630e0 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -1786,6 +1786,16 @@ namespace OpenSim.Region.Framework.Scenes | |||
1786 | // don't backup while it's selected or you're asking for changes mid stream. | 1786 | // don't backup while it's selected or you're asking for changes mid stream. |
1787 | if (isTimeToPersist() || forcedBackup) | 1787 | if (isTimeToPersist() || forcedBackup) |
1788 | { | 1788 | { |
1789 | if (m_rootPart.PhysActor != null && | ||
1790 | (!m_rootPart.PhysActor.IsPhysical)) | ||
1791 | { | ||
1792 | if (m_rootPart.PhysActor.Position != m_rootPart.GroupPosition) | ||
1793 | { | ||
1794 | m_rootPart.PhysActor.Position = m_rootPart.GroupPosition; | ||
1795 | m_rootPart.PhysActor.Orientation = m_rootPart.RotationOffset; | ||
1796 | m_scene.PhysicsScene.AddPhysicsActorTaint(m_rootPart.PhysActor); | ||
1797 | } | ||
1798 | } | ||
1789 | // m_log.DebugFormat( | 1799 | // m_log.DebugFormat( |
1790 | // "[SCENE]: Storing {0}, {1} in {2}", | 1800 | // "[SCENE]: Storing {0}, {1} in {2}", |
1791 | // Name, UUID, m_scene.RegionInfo.RegionName); | 1801 | // Name, UUID, m_scene.RegionInfo.RegionName); |