Changeset 254407 in webkit


Ignore:
Timestamp:
Jan 11, 2020 4:49:34 PM (4 years ago)
Author:
Alan Bujtas
Message:

[LFC] isOkToAccessDisplayBox should return false on formatting context root access.
https://bugs.webkit.org/show_bug.cgi?id=206123
<rdar://problem/58500267>

Reviewed by Antti Koivisto.

From now on any geometry access outside of the formatting context without a valid reason is considered an escape.

  • layout/FormattingContext.cpp:

(WebCore::Layout::FormattingContext::geometryForBox const):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r254406 r254407  
     12020-01-11  Zalan Bujtas  <zalan@apple.com>
     2
     3        [LFC] isOkToAccessDisplayBox should return false on formatting context root access.
     4        https://bugs.webkit.org/show_bug.cgi?id=206123
     5        <rdar://problem/58500267>
     6
     7        Reviewed by Antti Koivisto.
     8
     9        From now on any geometry access outside of the formatting context without a valid reason is considered an escape.
     10
     11        * layout/FormattingContext.cpp:
     12        (WebCore::Layout::FormattingContext::geometryForBox const):
     13
    1142020-01-11  Noam Rosenthal  <noam@webkit.org>
    215
  • trunk/Source/WebCore/layout/FormattingContext.cpp

    r254336 r254407  
    222222        }
    223223
    224         if (&layoutBox == &root()) {
    225             // FIXME: This is formatting context escaping in the strict sense, since the formatting context root box lives in the parent formatting context.
    226             // This happens e.g. when a block level box box needs to stretch horizontally and checks its containing block for horizontal space (this should probably be limited to reading horizontal constraint values).
    227             return true;
    228         }
    229 
    230224        if (!escapeReason) {
    231             // At this point any access is considered an escape.
     225            // Any geometry access outside of the formatting context without a valid reason is considered an escape.
    232226            return false;
    233227        }
Note: See TracChangeset for help on using the changeset viewer.