diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/ScenePresence.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 1e8ce22..4c17615 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -929,7 +929,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
929 | /// </summary> | 929 | /// </summary> |
930 | public void MakeChildAgent() | 930 | public void MakeChildAgent() |
931 | { | 931 | { |
932 | Animator.ResetAnimations(); | 932 | // It looks like m_animator is set to null somewhere, and MakeChild |
933 | // is called after that. Probably in aborted teleports. | ||
934 | if (m_animator == null) | ||
935 | m_animator = new ScenePresenceAnimator(this); | ||
936 | else | ||
937 | Animator.ResetAnimations(); | ||
933 | 938 | ||
934 | // m_log.DebugFormat( | 939 | // m_log.DebugFormat( |
935 | // "[SCENEPRESENCE]: Downgrading root agent {0}, {1} to a child agent in {2}", | 940 | // "[SCENEPRESENCE]: Downgrading root agent {0}, {1} to a child agent in {2}", |
@@ -3455,7 +3460,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3455 | if (m == null) // No script engine loaded | 3460 | if (m == null) // No script engine loaded |
3456 | continue; | 3461 | continue; |
3457 | 3462 | ||
3458 | m.PostObjectEvent(grp.RootPart.UUID, "changed", new Object[] { 16384 }); | 3463 | m.PostObjectEvent(grp.RootPart.UUID, "changed", new Object[] { (int)Changed.ANIMATION }); |
3459 | } | 3464 | } |
3460 | } | 3465 | } |
3461 | } | 3466 | } |