Skip to content
Commit 23c07add authored by Evan Rosky's avatar Evan Rosky
Browse files

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: Ic9d17e3d26de2ecd082e4fff642c1d456a7b071e
parent 48e84f96
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment