From 722be8f13258b285b322d1ec8609714f7059fb62 Mon Sep 17 00:00:00 2001 From: diva Date: Fri, 17 Apr 2009 23:55:59 +0000 Subject: Thank you M1sha for diagnosing and patching a lock bug affecting region crossings introduced in r9110. Fixes mantis #3456. --- OpenSim/Region/Framework/Scenes/ScenePresence.cs | 29 +++++++++++++----------- 1 file changed, 16 insertions(+), 13 deletions(-) (limited to 'OpenSim/Region/Framework') diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 0abe715..0eefd06 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -1948,29 +1948,32 @@ namespace OpenSim.Region.Framework.Scenes { //m_log.DebugFormat("Updating movement animation to {0}", anim); - if (m_animations.TrySetDefaultAnimation(anim, m_controllingClient.NextAnimationSequenceNumber, UUID.Zero)) + if (!m_isChildAgent) { - if (m_scriptEngines != null) + if (m_animations.TrySetDefaultAnimation(anim, m_controllingClient.NextAnimationSequenceNumber, UUID.Zero)) { - lock (m_attachments) + if (m_scriptEngines != null) { - foreach (SceneObjectGroup grp in m_attachments) + lock (m_attachments) { - // 16384 is CHANGED_ANIMATION - // - // Send this to all attachment root prims - // - foreach (IScriptModule m in m_scriptEngines) + foreach (SceneObjectGroup grp in m_attachments) { - if (m == null) // No script engine loaded - continue; + // 16384 is CHANGED_ANIMATION + // + // Send this to all attachment root prims + // + foreach (IScriptModule m in m_scriptEngines) + { + if (m == null) // No script engine loaded + continue; - m.PostObjectEvent(grp.RootPart.UUID, "changed", new Object[] {16384}); + m.PostObjectEvent(grp.RootPart.UUID, "changed", new Object[] { 16384 }); + } } } } + SendAnimPack(); } - SendAnimPack(); } } -- cgit v1.1