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

Reply via email to