summaryrefslogtreecommitdiff
path: root/indra/llcharacter
diff options
context:
space:
mode:
authorMatthew Breindel (Falcon) <falcon@lindenlab.com>2010-04-13 17:33:58 -0700
committerMatthew Breindel (Falcon) <falcon@lindenlab.com>2010-04-13 17:33:58 -0700
commitf480e1e8fc8d5e7f0c10eec26e03430e5aed8eaa (patch)
treea2331f2444183d4399323eec28343a5b8013ffb6 /indra/llcharacter
parente0bfefbd63449c0fe5ef7964677948f012d51506 (diff)
parent0660cf0c987385dc2923bff389c7fa1bc0feec81 (diff)
Merge
Diffstat (limited to 'indra/llcharacter')
-rw-r--r--indra/llcharacter/llkeyframemotion.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/llcharacter/llkeyframemotion.cpp b/indra/llcharacter/llkeyframemotion.cpp
index 5a2e3f73f9..f4dc3b927b 100644
--- a/indra/llcharacter/llkeyframemotion.cpp
+++ b/indra/llcharacter/llkeyframemotion.cpp
@@ -658,7 +658,12 @@ BOOL LLKeyframeMotion::onActivate()
// If the keyframe anim has an associated emote, trigger it.
if( mJointMotionList->mEmoteName.length() > 0 )
{
- mCharacter->startMotion( gAnimLibrary.stringToAnimState(mJointMotionList->mEmoteName) );
+ LLUUID emote_anim_id = gAnimLibrary.stringToAnimState(mJointMotionList->mEmoteName);
+ // don't start emote if already active to avoid recursion
+ if (!mCharacter->isMotionActive(emote_anim_id))
+ {
+ mCharacter->startMotion( emote_anim_id );
+ }
}
mLastLoopedTime = 0.f;