diff options
author | Evan Rosky <erosky@google.com> | 2020-12-11 18:14:11 -0800 |
---|---|---|
committer | Evan Rosky <erosky@google.com> | 2020-12-11 18:22:54 -0800 |
commit | d7bdb80ef4c64df8eb3421ed645bb1722d0e8027 (patch) | |
tree | 7d75f9257abec04ee46459d42178cd5c6afd82ca /rs/java/android/renderscript/ProgramFragmentFixedFunction.java | |
parent | bf33f70982e2b58f0f565b854561afc5d7979ba7 (diff) |
Create surfacecontrol before layout in relayoutWindow
If there is no surfacecontrol, relayout is skipped. This is
often fine because a later surfaceplacement pass usually
happens; however, when combined with commitFinishDrawingLocked
being out-of-order with layout during traversal, a race can
happen where relayoutWindow creates the surface (after
surface placement) and then commitFinishDrawing runs immediately
after that causing a windowanimation to use non-laid-out
surface positions.
Bug: 174636007
Test: Use logging to verify that layout/surface-placement happen
during relayoutWindow on a new window.
Change-Id: I05be878902995d421a0f073129ce1e86c03724f5
Diffstat (limited to 'rs/java/android/renderscript/ProgramFragmentFixedFunction.java')
0 files changed, 0 insertions, 0 deletions