From 68513a70bcd92384395513322f1b801e7bf9c729 Mon Sep 17 00:00:00 2001 From: Steve Block Date: Wed, 29 Sep 2010 17:32:26 +0100 Subject: Merge WebKit at r67908: Initial merge by Git Change-Id: I43a553e7b3299b28cb6ee8aa035ed70fe342b972 --- WebCore/page/animation/AnimationBase.cpp | 4 ++++ WebCore/page/animation/AnimationBase.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'WebCore/page/animation') diff --git a/WebCore/page/animation/AnimationBase.cpp b/WebCore/page/animation/AnimationBase.cpp index 6efed8e..ade68b5 100644 --- a/WebCore/page/animation/AnimationBase.cpp +++ b/WebCore/page/animation/AnimationBase.cpp @@ -1180,6 +1180,10 @@ void AnimationBase::fireAnimationEventsIfNeeded() // Check for end timeout if (m_totalDuration >= 0 && elapsedDuration >= m_totalDuration) { + // We may still be in AnimationStateLooping if we've managed to skip a + // whole iteration, in which case we should jump to the end state. + m_animState = AnimationStateEnding; + // Fire an end event updateStateMachine(AnimationStateInputEndTimerFired, m_totalDuration); } else { diff --git a/WebCore/page/animation/AnimationBase.h b/WebCore/page/animation/AnimationBase.h index 182cb3c..f5f3172 100644 --- a/WebCore/page/animation/AnimationBase.h +++ b/WebCore/page/animation/AnimationBase.h @@ -42,7 +42,7 @@ class Element; class Node; class RenderObject; class RenderStyle; -struct TimingFunction; +class TimingFunction; class AnimationBase : public RefCounted { friend class CompositeAnimation; -- cgit v1.1