[wpt-sync] Sync PR 40931 - [layout] Fix relayout boundary logic.
Categories
(Core :: SVG, task, P4)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox117 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 40931 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/40931
Details from upstream follow.
Ian Kilpatrick <ikilpatrick@chromium.org> wrote:
[layout] Fix relayout boundary logic.
\<div id="a">
\<div id="b">
\<div id="inner">\</div>
\</div>
\</div>Where "a" and "b" are potential relayout boundary targets.
Previously it was possible to have the following invalidation logic:
- "inner" changes - and invalidates layout up to "b".
- "b" gets added as a relayout boundary.
- "b" changes its own style - and invalidates layout up to "a".
(note this may disqualify "b" as a relayout boundary).- Layout starts at "b" but potentially with the wrong constraints.
- Layout starts at "a", but doesn't revisit "b" as it is layout clean.
This caused various types of DCHECKs and potentially incorrect layouts.
This patch ensures that we don't relayout as a root if we are marked as
needing layout by our own style.Fixed: 1462742
Fixed: 1454351
Change-Id: I0ff0818ac85844acf5f6ec88ad73db83147ee01e
Reviewed-on: https://chromium-review.googlesource.com/4671128
WPT-Export-Revision: 4ef588bb865d00d3ba519948dc4701c4908f11c9
| Assignee | ||
Updated•2 years ago
|
| Assignee | ||
Comment 1•2 years ago
|
||
| Assignee | ||
Comment 2•2 years ago
|
||
CI Results
Ran 0 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 3 tests
Status Summary
Firefox
PASS: 3
Chrome
PASS: 1
FAIL: 2
Safari
PASS: 1
FAIL: 2
Links
Comment 4•2 years ago
|
||
| bugherder | ||
Description
•