Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1a957321ca5fdebdb71ce3b6f65e7e5fb4b8a550
https://github.com/WebKit/WebKit/commit/1a957321ca5fdebdb71ce3b6f65e7e5fb4b8a550
Author: Alan Baradlay <[email protected]>
Date: 2024-11-24 (Sun, 24 Nov 2024)
Changed paths:
A LayoutTests/fast/block/intrinsic-sizing-crash-with-frameset-expected.txt
A LayoutTests/fast/block/intrinsic-sizing-crash-with-frameset.html
M Source/WebCore/rendering/RenderBox.cpp
M Source/WebCore/rendering/RenderBox.h
M Source/WebCore/rendering/RenderFrameSet.h
M Source/WebCore/rendering/RenderListMarker.h
M Source/WebCore/rendering/RenderMultiColumnSpannerPlaceholder.h
M Source/WebCore/rendering/RenderReplica.h
M Source/WebCore/rendering/RenderTableCol.h
M Source/WebCore/rendering/RenderTableRow.h
M Source/WebCore/rendering/RenderTableSection.h
Log Message:
-----------
RenderBox::computeIntrinsicLogicalWidths should not call RenderBox's
computePreferredLogicalWidths
https://bugs.webkit.org/show_bug.cgi?id=283584#
<rdar://problem/140431613>
Reviewed by Antti Koivisto.
computePreferredLogicalWidths may ask for intrinsic contributions (e.g.
min-content) and while most of renderers
implement their version of computeIntrinsicLogicalWidths, some don't and
instead they rely on the base
implementation which in turn calls back to computePreferredLogicalWidths.
This base implementation of computeIntrinsicLogicalWidths (see RenderBox) is
not very useful and none of the renderers that don't implement their version
need this functionality at all, either they are not supposed to get called
(e.g. spanner placeholder) or
they simply don't have relevant intrinsic sizes (e.g. frameset).
(Also if you need to provide intrinsic geometry, you most likely need to
implement your own version of it).
* LayoutTests/fast/block/intrinsic-sizing-crash-with-frameset-expected.txt:
Added.
* LayoutTests/fast/block/intrinsic-sizing-crash-with-frameset.html: Added.
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::computePreferredLogicalWidths):
(WebCore::RenderBox::computeIntrinsicLogicalWidths const): Deleted.
* Source/WebCore/rendering/RenderBox.h:
* Source/WebCore/rendering/RenderFrameSet.h:
* Source/WebCore/rendering/RenderListMarker.h:
* Source/WebCore/rendering/RenderMultiColumnSpannerPlaceholder.h:
* Source/WebCore/rendering/RenderReplica.h:
* Source/WebCore/rendering/RenderTableCol.h:
* Source/WebCore/rendering/RenderTableRow.h:
* Source/WebCore/rendering/RenderTableSection.h:
Canonical link: https://commits.webkit.org/287035@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes