| Index: ui/compositor/layer_animation_element.cc
|
| diff --git a/ui/compositor/layer_animation_element.cc b/ui/compositor/layer_animation_element.cc
|
| index 9a528e5509a553bc153c66a9011464bcc5ad9aff..962533d0ce63423ac17a78b8e6460fa98d36e62b 100644
|
| --- a/ui/compositor/layer_animation_element.cc
|
| +++ b/ui/compositor/layer_animation_element.cc
|
| @@ -340,7 +340,7 @@ class ThreadedLayerAnimationElement : public LayerAnimationElement {
|
| if (t < 1.0)
|
| return false;
|
|
|
| - if (Started()) {
|
| + if (Started() && IsThreaded()) {
|
| delegate->RemoveThreadedAnimation(animation_id());
|
| }
|
|
|
| @@ -349,14 +349,14 @@ class ThreadedLayerAnimationElement : public LayerAnimationElement {
|
| }
|
|
|
| void OnAbort(LayerAnimationDelegate* delegate) override {
|
| - if (delegate && Started()) {
|
| + if (delegate && Started() && IsThreaded()) {
|
| delegate->RemoveThreadedAnimation(animation_id());
|
| }
|
| }
|
|
|
| void RequestEffectiveStart(LayerAnimationDelegate* delegate) override {
|
| DCHECK(animation_group_id());
|
| - if (duration() == base::TimeDelta()) {
|
| + if (!IsThreaded()) {
|
| set_effective_start_time(requested_start_time());
|
| return;
|
| }
|
|
|