Properly disallow custom layout + multicol. #29403
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checking LayoutObject type won't do, since we don't always create a
LayoutNGCustom object (e.g. if it's a DETAILS element (but, then again,
should we allow custom layout on those???)). Check display type instead.
The reason for the crash was that we ended up creating a
LayoutNGBlockFragmentation multicol container inside a legacy multicol
container, even when LayoutNGBlockFragmentation is disabled (custom
layout forces LayoutNG). We don't create a paint layer on the flow
thread (nor the multicol container) in LayoutNGBlockFragmentation, which
the legacy pre-paint code assumes.
Bug: 1219874
Change-Id: I26fcd8d4a5fd51ce1799b207bf39b8e322890ca9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2964675
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Commit-Queue: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#893340}