summaryrefslogtreecommitdiff
path: root/Source/WebCore/page/animation/AnimationBase.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/page/animation/AnimationBase.cpp')
-rw-r--r--Source/WebCore/page/animation/AnimationBase.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/Source/WebCore/page/animation/AnimationBase.cpp b/Source/WebCore/page/animation/AnimationBase.cpp
index e3ad92fa0..4fd0409ec 100644
--- a/Source/WebCore/page/animation/AnimationBase.cpp
+++ b/Source/WebCore/page/animation/AnimationBase.cpp
@@ -1673,7 +1673,9 @@ double AnimationBase::fractionalTime(double scale, double elapsedTime, double of
integralTime = min(integralTime, m_animation->iterationCount() - 1);
fractionalTime -= integralTime;
- if ((m_animation->direction() == Animation::AnimationDirectionAlternate) && (integralTime & 1))
+ if (((m_animation->direction() == Animation::AnimationDirectionAlternate) && (integralTime & 1))
+ || ((m_animation->direction() == Animation::AnimationDirectionAlternateReverse) && !(integralTime & 1))
+ || m_animation->direction() == Animation::AnimationDirectionReverse)
fractionalTime = 1 - fractionalTime;
if (scale != 1 || offset)