Index: third_party/WebKit/Source/core/animation/CompositorPendingAnimations.cpp |
diff --git a/third_party/WebKit/Source/core/animation/CompositorPendingAnimations.cpp b/third_party/WebKit/Source/core/animation/CompositorPendingAnimations.cpp |
index 376fb93d6772a2ff16f86cba82e1d77c73cb574e..19eb9a53d93fd6564cf8284263279fdea6056947 100644 |
--- a/third_party/WebKit/Source/core/animation/CompositorPendingAnimations.cpp |
+++ b/third_party/WebKit/Source/core/animation/CompositorPendingAnimations.cpp |
@@ -80,7 +80,7 @@ bool CompositorPendingAnimations::update(bool startOnCompositor) |
startedSynchronizedOnCompositor = true; |
} |
- if (animation->playing() && !animation->hasStartTime()) { |
+ if (animation->playing() && !animation->hasStartTime() && animation->timeline() && animation->timeline()->isActive()) { |
waitingForStartTime.append(animation.get()); |
} |
} else { |
@@ -142,7 +142,7 @@ void CompositorPendingAnimations::notifyCompositorAnimationStarted(double monoto |
animations.swap(m_waitingForCompositorAnimationStart); |
for (auto animation : animations) { |
- if (animation->hasStartTime() || animation->playStateInternal() != Animation::Pending) { |
+ if (animation->hasStartTime() || animation->playStateInternal() != Animation::Pending || !animation->timeline() || !animation->timeline()->isActive()) { |
// Already started or no longer relevant. |
continue; |
} |