Changeset 258666 in webkit


Ignore:
Timestamp:
Mar 18, 2020 3:48:44 PM (4 years ago)
Author:
Alan Bujtas
Message:

[MultiColumn] Ignore spanner boxes inside <legend>
https://bugs.webkit.org/show_bug.cgi?id=209248
<rdar://problem/51857865>

Reviewed by Simon Fraser.

Source/WebCore:

<legend> boxes don't participate in the multicolumn flow, they are simply ignored.
This patch ensures that we don't include their descendants in the spanner construction.
<column>some<legend><div spanner></div></legend>content</column> <- the "spanner" div won't span the column content.

Test: fast/multicol/spanner-inside-legend-crash.html

  • rendering/updating/RenderTreeBuilderMultiColumn.cpp:

(WebCore::isValidColumnSpanner):

LayoutTests:

  • fast/multicol/spanner-inside-legend-crash-expected.txt: Added.
  • fast/multicol/spanner-inside-legend-crash.html: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r258662 r258666  
     12020-03-18  Zalan Bujtas  <zalan@apple.com>
     2
     3        [MultiColumn] Ignore spanner boxes inside <legend>
     4        https://bugs.webkit.org/show_bug.cgi?id=209248
     5        <rdar://problem/51857865>
     6
     7        Reviewed by Simon Fraser.
     8
     9        * fast/multicol/spanner-inside-legend-crash-expected.txt: Added.
     10        * fast/multicol/spanner-inside-legend-crash.html: Added.
     11
    1122020-03-18  Eugene But  <eugenebut@chromium.org>
    213
  • trunk/Source/WebCore/ChangeLog

    r258664 r258666  
     12020-03-18  Zalan Bujtas  <zalan@apple.com>
     2
     3        [MultiColumn] Ignore spanner boxes inside <legend>
     4        https://bugs.webkit.org/show_bug.cgi?id=209248
     5        <rdar://problem/51857865>
     6
     7        Reviewed by Simon Fraser.
     8
     9        <legend> boxes don't participate in the multicolumn flow, they are simply ignored.
     10        This patch ensures that we don't include their descendants in the spanner construction.
     11        <column>some<legend><div spanner></div></legend>content</column> <- the "spanner" div won't span the column content.
     12
     13        Test: fast/multicol/spanner-inside-legend-crash.html
     14
     15        * rendering/updating/RenderTreeBuilderMultiColumn.cpp:
     16        (WebCore::isValidColumnSpanner):
     17
    1182020-03-18  Yusuke Suzuki  <ysuzuki@apple.com>
    219
  • trunk/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp

    r255113 r258666  
    9999    for (auto* ancestor = descendantBox.containingBlock(); ancestor; ancestor = ancestor->containingBlock()) {
    100100        if (is<RenderView>(*ancestor))
     101            return false;
     102        if (ancestor->isLegend())
    101103            return false;
    102104        if (is<RenderFragmentedFlow>(*ancestor)) {
Note: See TracChangeset for help on using the changeset viewer.