[animation-worket] Ensure each worklet receives only its own input
Previously we would allow worklet to access and act on all of worklet inputs. This is bad since it can leak information between different animation worklet global scopes. Summary of the fix: - Introduce WorkletAnimationId which can uniquely identify both the worklet and animation. - Give each worklet animation its own Id generated using its underlying worklet's scope. - Plumb this new Id to cc. - AnimationHost produces input state which is bucketed per scope. - CompositorMutatorImpl only passes to each compositor animator the input. bucket that matches that compositor animator's scope Id. - For additional safety added DCHECK to verify that each scope is receiving only its own input. TEST: compositor_mutator_impl_test.cc Bug: 857479 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ib4b8f610ef661bdbf09c4c0252a2b9c4ba04db16 Reviewed-on: https://chromium-review.googlesource.com/1120436Reviewed-by:Kentaro Hara <haraken@chromium.org> Reviewed-by:
Robert Flack <flackr@chromium.org> Commit-Queue: Majid Valipour <majidvp@chromium.org> Cr-Commit-Position: refs/heads/master@{#572572}
Showing
Please register or sign in to comment