Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e29e71d45d2511490d2d809dbd0691dbd9c21ad8
      
https://github.com/WebKit/WebKit/commit/e29e71d45d2511490d2d809dbd0691dbd9c21ad8
  Author: Ahmad Saleem <[email protected]>
  Date:   2026-04-01 (Wed, 01 Apr 2026)

  Changed paths:
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html
    M Source/WebCore/css/parser/SizesAttributeParser.cpp

  Log Message:
  -----------
  REGRESSION(305392@main): Image with srcset and sizes containing calc(number / 
0) is not displayed
https://bugs.webkit.org/show_bug.cgi?id=311238
rdar://173831217

Reviewed by Simon Fraser.

When the sizes attribute contains a calc() expression that produces
infinity or NaN (e.g. calc(1px / 0)), SizesAttributeParser::parseFunction
would pass the result through to clampToRange, producing either an
enormous float or undefined behavior. This caused the srcset density
calculation to yield ~0 or infinity, rendering the image at 0x0 pixels.

Per https://drafts.csswg.org/css-values-4/#calc-ieee, infinities and NaN
must not escape a top-level calculation. For the sizes attribute, treat
these as invalid so the entry is skipped and the default size (100vw) is
used, matching the behavior of Firefox and Chrome.

* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html:
* Source/WebCore/css/parser/SizesAttributeParser.cpp:
(WebCore::SizesAttributeParser::parseFunction):

Canonical link: https://commits.webkit.org/310418@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to