LayerTreeHost::AnimateLayers doesn't always notify about animations which have finished ticking. |
||
Issue descriptionLayerTreeHost::AnimateLayers uses the begin_frame_args.frame_time to tick animations, but when animations are serviced by PageAnimator::ServiceScriptedAnimations they use the AnimationClock's time which may not match. For a detailed diagnosis, see debugging in issue 888260 . This bug tracks ensuring that LayerTreeHost and blink's animation states match. This blocks issue 888260 because BGPT does not generate nodes if the animation is no longer current. This may be an issue without BGPT as well but I haven't put together a proof of concept.
,
Oct 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c1f279e1d7037c566b59251909e82db2f59e9da1 commit c1f279e1d7037c566b59251909e82db2f59e9da1 Author: Robert Flack <flackr@chromium.org> Date: Wed Oct 10 21:49:13 2018 Finish cc::Animation when blink::Animation is no longer current. Rather than relying on AnimateLayers to detect finished animations, the blink animation can notify its corresponding cc animation when the current state changes. Bug: 891141 Cq-Include-Trybots: luci.chromium.try:linux-blink-gen-property-trees;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ifca9853512c30585ae45cf68f73718eb274c656e Reviewed-on: https://chromium-review.googlesource.com/c/1270528 Commit-Queue: Robert Flack <flackr@chromium.org> Reviewed-by: Philip Rogers <pdr@chromium.org> Reviewed-by: Stephen McGruer <smcgruer@chromium.org> Cr-Commit-Position: refs/heads/master@{#598524} [add] https://crrev.com/c1f279e1d7037c566b59251909e82db2f59e9da1/third_party/WebKit/LayoutTests/animations/stability/animation-end-crash-expected.txt [add] https://crrev.com/c1f279e1d7037c566b59251909e82db2f59e9da1/third_party/WebKit/LayoutTests/animations/stability/animation-end-crash.html [modify] https://crrev.com/c1f279e1d7037c566b59251909e82db2f59e9da1/third_party/blink/renderer/core/animation/animation.cc
,
Oct 17
This change fixes the crash by notifying from the blink side about finished animations and canceling the composited animation. |
||
►
Sign in to add a comment |
||
Comment 1 by flackr@chromium.org
, Oct 2