Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 38b4e10b7ea02b678b3cdab91f2cecda19a8d5ab
https://github.com/WebKit/WebKit/commit/38b4e10b7ea02b678b3cdab91f2cecda19a8d5ab
Author: Alan Baradlay <[email protected]>
Date: 2026-05-19 (Tue, 19 May 2026)
Changed paths:
A
LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-025-ref.html
A
LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-025-expected.html
A
LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-025.html
M Source/WebCore/rendering/RenderText.cpp
Log Message:
-----------
CSS: weird interaction between img with max-width and other elements causes
parent element width to go berserk
https://bugs.webkit.org/show_bug.cgi?id=314097
rdar://176889859
Reviewed by Antti Koivisto.
<style>span::before { content: '\A'; white-space: pre-line; }</style>
<div style="width: max-content"><img>X <span>X</span></div>
The div should be one X wide. Instead it was one X plus a trailing
space wide.
When a forced line break sits in its own whitespace-only RenderText
(here, generated by ::before content: '\A'), trimmedPreferredWidths
early-returns without copying m_hasBreak into widths.hasBreak. The
caller never sees the forced break and skips the trailing-whitespace
trim added for in-text \n.
* Source/WebCore/rendering/RenderText.cpp:
(WebCore::RenderText::trimmedPreferredWidths):
*
LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-025{,-expected}.html:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-025-ref.html:
Added.
Canonical link: https://commits.webkit.org/313488@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications