Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0b4487a5b104ec51bc23cde26c7fa68d29ac85b4
https://github.com/WebKit/WebKit/commit/0b4487a5b104ec51bc23cde26c7fa68d29ac85b4
Author: Sam Weinig <[email protected]>
Date: 2026-05-18 (Mon, 18 May 2026)
Changed paths:
R LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair-expected.txt
R LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair.html
R
LayoutTests/fast/css/css-typed-om/css-builder-converter-initial-letter-crash-expected.txt
R
LayoutTests/fast/css/css-typed-om/css-builder-converter-initial-letter-crash.html
A
LayoutTests/fast/css/css-typed-om/css-typed-om-typeerror-associated-property-mismatch-expected.txt
A
LayoutTests/fast/css/css-typed-om/css-typed-om-typeerror-associated-property-mismatch.html
R LayoutTests/fast/css/cssom-border-image-width-crash-expected.txt
R LayoutTests/fast/css/cssom-border-image-width-crash.html
R LayoutTests/fast/css/cssom-mask-border-width-crash-expected.txt
R LayoutTests/fast/css/cssom-mask-border-width-crash.html
R LayoutTests/fast/css/cssom-translate-crash-expected.txt
R LayoutTests/fast/css/cssom-translate-crash.html
R
LayoutTests/fast/css/stylepropertymap-append-not-checking-for-variablereferencevalue-expected.txt
R
LayoutTests/fast/css/stylepropertymap-append-not-checking-for-variablereferencevalue.html
R
LayoutTests/fast/dom/StyleSheet/css-font-variation-settings-crash-expected.txt
R LayoutTests/fast/dom/StyleSheet/css-font-variation-settings-crash.html
M
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set.tentative-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set.tentative.html
M
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set.tentative-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set.tentative.html
M Source/WebCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations
M Source/WebCore/css/StyleProperties.cpp
M Source/WebCore/css/StyleProperties.h
M Source/WebCore/css/typedom/CSSNumericValue.cpp
M Source/WebCore/css/typedom/CSSNumericValue.h
M Source/WebCore/css/typedom/CSSOMKeywordValue.cpp
M Source/WebCore/css/typedom/CSSOMKeywordValue.h
M Source/WebCore/css/typedom/CSSStyleValue.cpp
M Source/WebCore/css/typedom/CSSStyleValue.h
M Source/WebCore/css/typedom/CSSStyleValueFactory.cpp
M Source/WebCore/css/typedom/CSSStyleValueFactory.h
M Source/WebCore/css/typedom/CSSUnitValue.cpp
M Source/WebCore/css/typedom/CSSUnitValue.h
M Source/WebCore/css/typedom/ComputedStylePropertyMapReadOnly.cpp
M Source/WebCore/css/typedom/DeclaredStylePropertyMap.cpp
M Source/WebCore/css/typedom/InlineStylePropertyMap.cpp
M Source/WebCore/css/typedom/MainThreadStylePropertyMapReadOnly.cpp
M Source/WebCore/css/typedom/StylePropertyMap.cpp
M Source/WebCore/css/typedom/StylePropertyMapReadOnly.cpp
M Source/WebCore/css/typedom/StylePropertyMapReadOnly.h
M Source/WebCore/css/typedom/transform/CSSMatrixComponent.cpp
M Source/WebCore/css/typedom/transform/CSSPerspective.cpp
M Source/WebCore/css/typedom/transform/CSSRotate.cpp
M Source/WebCore/css/typedom/transform/CSSScale.cpp
M Source/WebCore/css/typedom/transform/CSSSkew.cpp
M Source/WebCore/css/typedom/transform/CSSSkewX.cpp
M Source/WebCore/css/typedom/transform/CSSSkewY.cpp
M Source/WebCore/css/typedom/transform/CSSTranslate.cpp
Log Message:
-----------
Implement support for the [[associatedProperty]] internal slot for
CSSStyleValue
https://bugs.webkit.org/show_bug.cgi?id=314995
Reviewed by Darin Adler.
Implements support for the [[associatedProperty]] internal slot on CSSStyleValue
(https://drafts.css-houdini.org/css-typed-om/#dom-cssstylevalue-associatedproperty-slot).
This enforces that CSSStyleValue objects are only considered valid for the
property
that they were parsed for.
With this, we can remove a few hacks we had in StylePropertyMap::set to disallow
coalescing CSSValuePair and CSSQuadValue. These cases now work when they should,
and throw a TypeError due to mismatch [[associatedProperty]] in the invalid
case.
A bunch of tests which were added over time to test for cases of mismatch
property
(usually found via fuzzers) were consolidated now that they all fall under the
the same [[associatedProperty]] exception.
Additionally, two WPT tests which test for [[associatedProperty] state were
updated based on the latest WPT sources.
Test:
fast/css/css-typed-om/css-typed-om-typeerror-associated-property-mismatch.html
* LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair-expected.txt:
Removed.
* LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair.html: Removed.
*
LayoutTests/fast/css/css-typed-om/css-builder-converter-initial-letter-crash-expected.txt:
Removed.
*
LayoutTests/fast/css/css-typed-om/css-builder-converter-initial-letter-crash.html:
Removed.
*
LayoutTests/fast/css/css-typed-om/css-typed-om-typeerror-associated-property-mismatch-expected.txt:
Added.
*
LayoutTests/fast/css/css-typed-om/css-typed-om-typeerror-associated-property-mismatch.html:
Added.
* LayoutTests/fast/css/cssom-border-image-width-crash-expected.txt: Removed.
* LayoutTests/fast/css/cssom-border-image-width-crash.html: Removed.
* LayoutTests/fast/css/cssom-mask-border-width-crash-expected.txt: Removed.
* LayoutTests/fast/css/cssom-mask-border-width-crash.html: Removed.
* LayoutTests/fast/css/cssom-translate-crash-expected.txt: Removed.
* LayoutTests/fast/css/cssom-translate-crash.html: Removed.
*
LayoutTests/fast/css/stylepropertymap-append-not-checking-for-variablereferencevalue-expected.txt:
Removed.
*
LayoutTests/fast/css/stylepropertymap-append-not-checking-for-variablereferencevalue.html:
Removed.
*
LayoutTests/fast/dom/StyleSheet/css-font-variation-settings-crash-expected.txt:
Removed.
* LayoutTests/fast/dom/StyleSheet/css-font-variation-settings-crash.html:
Removed.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set.tentative-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set.tentative.html:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set.tentative-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set.tentative.html:
* Source/WebCore/css/StyleProperties.cpp:
* Source/WebCore/css/StyleProperties.h:
* Source/WebCore/css/typedom/CSSNumericValue.cpp:
* Source/WebCore/css/typedom/CSSNumericValue.h:
* Source/WebCore/css/typedom/CSSOMKeywordValue.cpp:
* Source/WebCore/css/typedom/CSSOMKeywordValue.h:
* Source/WebCore/css/typedom/CSSStyleValue.cpp:
* Source/WebCore/css/typedom/CSSStyleValue.h:
* Source/WebCore/css/typedom/CSSStyleValueFactory.cpp:
* Source/WebCore/css/typedom/CSSStyleValueFactory.h:
* Source/WebCore/css/typedom/CSSUnitValue.cpp:
* Source/WebCore/css/typedom/CSSUnitValue.h:
* Source/WebCore/css/typedom/ComputedStylePropertyMapReadOnly.cpp:
* Source/WebCore/css/typedom/DeclaredStylePropertyMap.cpp:
* Source/WebCore/css/typedom/InlineStylePropertyMap.cpp:
* Source/WebCore/css/typedom/MainThreadStylePropertyMapReadOnly.cpp:
* Source/WebCore/css/typedom/StylePropertyMap.cpp:
* Source/WebCore/css/typedom/StylePropertyMapReadOnly.cpp:
* Source/WebCore/css/typedom/StylePropertyMapReadOnly.h:
* Source/WebCore/css/typedom/transform/CSSMatrixComponent.cpp:
* Source/WebCore/css/typedom/transform/CSSPerspective.cpp:
* Source/WebCore/css/typedom/transform/CSSRotate.cpp:
* Source/WebCore/css/typedom/transform/CSSScale.cpp:
* Source/WebCore/css/typedom/transform/CSSSkew.cpp:
* Source/WebCore/css/typedom/transform/CSSSkewX.cpp:
* Source/WebCore/css/typedom/transform/CSSSkewY.cpp:
* Source/WebCore/css/typedom/transform/CSSTranslate.cpp:
Canonical link: https://commits.webkit.org/313456@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications