Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bug 1557365 [wpt PR 16859] - [LayoutNG] Only reset a legacy cached re…
…sult if OOF-positioned., a=testonly Automatic update from web-platform-tests [LayoutNG] Only reset a legacy cached result if OOF-positioned. We had an issue with our simplified layout algorithm + relayout boundary roots. For this to trigger we needed a (legacy) layout object to be marked for simplified layout which was also a relayout boundary root. During LocalFrameView::PerformLayout, LayoutBox::UpdateLayout would run on the legacy LayoutBox, and during LayoutBox::UpdateAfterLayout, this would clear the LayoutBox::cached_layout_result_. During another relayout boundary layout, we'd trigger simplified layout for an NG node. This expects that there is always a cached layout result associated with a box. However this now wasn't the case, as the child had previously cleared it, within LayoutBox::UpdateAfterLayout. The guard inside LayoutBox::UpdateAfterLayout was designed to protect against OOF-positioned nodes changing their layout parent, this modifies that check do only clear the layout result of OOF-positioned legacy layout objects. Bug: 963387, 963433, 963620 Change-Id: Ice1202bdb939689e26e24a8690a52e7d7e82ecbc Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1614082 Reviewed-by: Aleks Totic <[email protected]> Commit-Queue: Ian Kilpatrick <[email protected]> Cr-Commit-Position: refs/heads/master@{#660166} -- wp5At-commits: c40cd30b2d4d686325f3b00403c1c3d0314219e3 wpt-pr: 16859
- Loading branch information