Closed Bug 1469487 Opened 7 years ago Closed 7 years ago

[wpt-sync] Sync PR 11560 - Reland: Floats and out-of-flow objects may not be adjacent to anonymous blocks.

Categories

(Core :: CSS Parsing and Computation, enhancement, P4)

enhancement

Tracking

()

RESOLVED FIXED
mozilla63
Tracking Status
firefox63 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 11560 into mozilla-central (this bug is closed when the sync is complete). PR: https://github.com/web-platform-tests/wpt/pull/11560 Details from upstream follow. Morten Stenshorne <mstensho@chromium.org> wrote: > Reland: Floats and out-of-flow objects may not be adjacent to anonymous blocks. > > Floats and out-of-flow objects need to be true layout siblings of the > inlines, or rendering will be wrong. This means that such objects should > never be siblings of anonymous blocks, but rather inside them. This > already works correctly for initial layout tree building, and also for > many DOM manipulations. However, code was missing to satisfy this > requirement if we removed a regular block that was a sibling of an > anonymous block and either a float or out-of-flow positioned object. > > This even caused a crash triggered by ruby code, which ended up mixing > inline and block children within the same container. That is not > allowed. This happened in the MoveAllChildrenIncludingFloatsTo() call > inside LayoutRubyBase::MoveBlockChildren(). Added a DCHECK to > MoveAllChildrenIncludingFloatsTo() (which could fail prior to this fix); > When moving children from one container to another, either both or none > of the containers must have inline children. > > This is a reland of https://chromium-review.googlesource.com/1102690 > with some modifications to avoid bug 853552. > > Bug: 852640 > Change-Id: I0f8a0aa5523e8fe60c841164d25aad088f4b728f > > Reviewed-on: https://chromium-review.googlesource.com/1104900 > WPT-Export-Revision: b891dc03db1efa4b76bdd026dbf83c5a21853773
Component: web-platform-tests → CSS Parsing and Computation
Product: Testing → Core
Pushed by james@hoppipolla.co.uk: https://hg.mozilla.org/integration/mozilla-inbound/rev/a15bfb3c770e [wpt PR 11560] - Reland: Floats and out-of-flow objects may not be adjacent to anonymous blocks., a=testonly
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
You need to log in before you can comment on or make changes to this bug.