Content-Length: 540660 | pFad | http://github.com/movableink/webkit/commit/9ae1090fb3adf43b657e214bdcc56e11047db419

9B [CSS Math Functions] NaN numeric representation should be 0 (not Infi… · movableink/webkit@9ae1090 · GitHub
Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 9ae1090

Browse files
nt1mmnutt
authored andcommittedJul 15, 2023
[CSS Math Functions] NaN numeric representation should be 0 (not Infinity)
https://bugs.webkit.org/show_bug.cgi?id=259034 rdar://111984451 Reviewed by Darin Adler. This changed in w3c/csswg-drafts@b5113b9 Discussion was at w3c/csswg-drafts#7067 * LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-function-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-lab-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-function-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-lab-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-mod-rem-serialize-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-values/signs-abs-computed-expected.txt: * Source/WebCore/css/calc/CSSCalcOperationNode.h: * Source/WebCore/css/calc/CSSCalcValue.cpp: (WebCore::CSSCalcValue::clampToPermittedRange const): Canonical link: https://commits.webkit.org/265891@main
1 parent e9b1e94 commit 9ae1090

File tree

9 files changed

+74
-69
lines changed

9 files changed

+74
-69
lines changed
 

‎LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-function-expected.txt

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ PASS Property color value 'color(srgb none none none)'
2626
PASS Property color value 'color(srgb 10% none none / none)'
2727
PASS Property color value 'color(srgb none none none / 0.5)'
2828
PASS Property color value 'color(srgb 0 0 0 / none)'
29-
FAIL Property color value 'color(srgb calc(NaN) 0 0)' assert_equals: expected "color(srgb 0 0 0)" but got "color(srgb Infinity 0 0)"
30-
FAIL Property color value 'color(srgb calc(0 / 0) 0 0)' assert_equals: expected "color(srgb 0 0 0)" but got "color(srgb Infinity 0 0)"
29+
PASS Property color value 'color(srgb calc(NaN) 0 0)'
30+
PASS Property color value 'color(srgb calc(0 / 0) 0 0)'
3131
PASS Property color value 'color(srgb-linear 0% 0% 0%)'
3232
PASS Property color value 'color(srgb-linear 10% 10% 10%)'
3333
PASS Property color value 'color(srgb-linear .2 .2 25%)'
@@ -55,8 +55,8 @@ PASS Property color value 'color(srgb-linear none none none)'
5555
PASS Property color value 'color(srgb-linear 10% none none / none)'
5656
PASS Property color value 'color(srgb-linear none none none / 0.5)'
5757
PASS Property color value 'color(srgb-linear 0 0 0 / none)'
58-
FAIL Property color value 'color(srgb-linear calc(NaN) 0 0)' assert_equals: expected "color(srgb-linear 0 0 0)" but got "color(srgb-linear Infinity 0 0)"
59-
FAIL Property color value 'color(srgb-linear calc(0 / 0) 0 0)' assert_equals: expected "color(srgb-linear 0 0 0)" but got "color(srgb-linear Infinity 0 0)"
58+
PASS Property color value 'color(srgb-linear calc(NaN) 0 0)'
59+
PASS Property color value 'color(srgb-linear calc(0 / 0) 0 0)'
6060
PASS Property color value 'color(a98-rgb 0% 0% 0%)'
6161
PASS Property color value 'color(a98-rgb 10% 10% 10%)'
6262
PASS Property color value 'color(a98-rgb .2 .2 25%)'
@@ -84,8 +84,8 @@ PASS Property color value 'color(a98-rgb none none none)'
8484
PASS Property color value 'color(a98-rgb 10% none none / none)'
8585
PASS Property color value 'color(a98-rgb none none none / 0.5)'
8686
PASS Property color value 'color(a98-rgb 0 0 0 / none)'
87-
FAIL Property color value 'color(a98-rgb calc(NaN) 0 0)' assert_equals: expected "color(a98-rgb 0 0 0)" but got "color(a98-rgb Infinity 0 0)"
88-
FAIL Property color value 'color(a98-rgb calc(0 / 0) 0 0)' assert_equals: expected "color(a98-rgb 0 0 0)" but got "color(a98-rgb Infinity 0 0)"
87+
PASS Property color value 'color(a98-rgb calc(NaN) 0 0)'
88+
PASS Property color value 'color(a98-rgb calc(0 / 0) 0 0)'
8989
PASS Property color value 'color(rec2020 0% 0% 0%)'
9090
PASS Property color value 'color(rec2020 10% 10% 10%)'
9191
PASS Property color value 'color(rec2020 .2 .2 25%)'
@@ -113,8 +113,8 @@ PASS Property color value 'color(rec2020 none none none)'
113113
PASS Property color value 'color(rec2020 10% none none / none)'
114114
PASS Property color value 'color(rec2020 none none none / 0.5)'
115115
PASS Property color value 'color(rec2020 0 0 0 / none)'
116-
FAIL Property color value 'color(rec2020 calc(NaN) 0 0)' assert_equals: expected "color(rec2020 0 0 0)" but got "color(rec2020 Infinity 0 0)"
117-
FAIL Property color value 'color(rec2020 calc(0 / 0) 0 0)' assert_equals: expected "color(rec2020 0 0 0)" but got "color(rec2020 Infinity 0 0)"
116+
PASS Property color value 'color(rec2020 calc(NaN) 0 0)'
117+
PASS Property color value 'color(rec2020 calc(0 / 0) 0 0)'
118118
PASS Property color value 'color(prophoto-rgb 0% 0% 0%)'
119119
PASS Property color value 'color(prophoto-rgb 10% 10% 10%)'
120120
PASS Property color value 'color(prophoto-rgb .2 .2 25%)'
@@ -142,8 +142,8 @@ PASS Property color value 'color(prophoto-rgb none none none)'
142142
PASS Property color value 'color(prophoto-rgb 10% none none / none)'
143143
PASS Property color value 'color(prophoto-rgb none none none / 0.5)'
144144
PASS Property color value 'color(prophoto-rgb 0 0 0 / none)'
145-
FAIL Property color value 'color(prophoto-rgb calc(NaN) 0 0)' assert_equals: expected "color(prophoto-rgb 0 0 0)" but got "color(prophoto-rgb Infinity 0 0)"
146-
FAIL Property color value 'color(prophoto-rgb calc(0 / 0) 0 0)' assert_equals: expected "color(prophoto-rgb 0 0 0)" but got "color(prophoto-rgb Infinity 0 0)"
145+
PASS Property color value 'color(prophoto-rgb calc(NaN) 0 0)'
146+
PASS Property color value 'color(prophoto-rgb calc(0 / 0) 0 0)'
147147
PASS Property color value 'color(display-p3 0% 0% 0%)'
148148
PASS Property color value 'color(display-p3 10% 10% 10%)'
149149
PASS Property color value 'color(display-p3 .2 .2 25%)'
@@ -171,8 +171,8 @@ PASS Property color value 'color(display-p3 none none none)'
171171
PASS Property color value 'color(display-p3 10% none none / none)'
172172
PASS Property color value 'color(display-p3 none none none / 0.5)'
173173
PASS Property color value 'color(display-p3 0 0 0 / none)'
174-
FAIL Property color value 'color(display-p3 calc(NaN) 0 0)' assert_equals: expected "color(display-p3 0 0 0)" but got "color(display-p3 Infinity 0 0)"
175-
FAIL Property color value 'color(display-p3 calc(0 / 0) 0 0)' assert_equals: expected "color(display-p3 0 0 0)" but got "color(display-p3 Infinity 0 0)"
174+
PASS Property color value 'color(display-p3 calc(NaN) 0 0)'
175+
PASS Property color value 'color(display-p3 calc(0 / 0) 0 0)'
176176
PASS Property color value 'color(xyz 0 0 0)'
177177
PASS Property color value 'color(xyz 0 0 0 / 1)'
178178
PASS Property color value 'color(xyz 1 1 1)'
@@ -193,8 +193,8 @@ PASS Property color value 'color(xyz none none none)'
193193
PASS Property color value 'color(xyz 0.2 none none / none)'
194194
PASS Property color value 'color(xyz none none none / 0.5)'
195195
PASS Property color value 'color(xyz 0 0 0 / none)'
196-
FAIL Property color value 'color(xyz calc(NaN) 0 0)' assert_equals: expected "color(xyz-d65 0 0 0)" but got "color(xyz-d65 Infinity 0 0)"
197-
FAIL Property color value 'color(xyz calc(0 / 0) 0 0)' assert_equals: expected "color(xyz-d65 0 0 0)" but got "color(xyz-d65 Infinity 0 0)"
196+
PASS Property color value 'color(xyz calc(NaN) 0 0)'
197+
PASS Property color value 'color(xyz calc(0 / 0) 0 0)'
198198
PASS Property color value 'color(xyz-d50 0 0 0)'
199199
PASS Property color value 'color(xyz-d50 0 0 0 / 1)'
200200
PASS Property color value 'color(xyz-d50 1 1 1)'
@@ -215,8 +215,8 @@ PASS Property color value 'color(xyz-d50 none none none)'
215215
PASS Property color value 'color(xyz-d50 0.2 none none / none)'
216216
PASS Property color value 'color(xyz-d50 none none none / 0.5)'
217217
PASS Property color value 'color(xyz-d50 0 0 0 / none)'
218-
FAIL Property color value 'color(xyz-d50 calc(NaN) 0 0)' assert_equals: expected "color(xyz-d50 0 0 0)" but got "color(xyz-d50 Infinity 0 0)"
219-
FAIL Property color value 'color(xyz-d50 calc(0 / 0) 0 0)' assert_equals: expected "color(xyz-d50 0 0 0)" but got "color(xyz-d50 Infinity 0 0)"
218+
PASS Property color value 'color(xyz-d50 calc(NaN) 0 0)'
219+
PASS Property color value 'color(xyz-d50 calc(0 / 0) 0 0)'
220220
PASS Property color value 'color(xyz-d65 0 0 0)'
221221
PASS Property color value 'color(xyz-d65 0 0 0 / 1)'
222222
PASS Property color value 'color(xyz-d65 1 1 1)'
@@ -237,8 +237,8 @@ PASS Property color value 'color(xyz-d65 none none none)'
237237
PASS Property color value 'color(xyz-d65 0.2 none none / none)'
238238
PASS Property color value 'color(xyz-d65 none none none / 0.5)'
239239
PASS Property color value 'color(xyz-d65 0 0 0 / none)'
240-
FAIL Property color value 'color(xyz-d65 calc(NaN) 0 0)' assert_equals: expected "color(xyz-d65 0 0 0)" but got "color(xyz-d65 Infinity 0 0)"
241-
FAIL Property color value 'color(xyz-d65 calc(0 / 0) 0 0)' assert_equals: expected "color(xyz-d65 0 0 0)" but got "color(xyz-d65 Infinity 0 0)"
240+
PASS Property color value 'color(xyz-d65 calc(NaN) 0 0)'
241+
PASS Property color value 'color(xyz-d65 calc(0 / 0) 0 0)'
242242
PASS Property color value 'color(srgb 1.00 0.50 0.200)' [sRGB all numbers]
243243
PASS Property color value 'color(srgb 100% 50% 20%)' [sRGB all percent]
244244
PASS Property color value 'color(srgb 100% 0.5 20%)' [sRGB mixed number and percent]

‎LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-lab-expected.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ PASS Property color value 'lab(none none none)'
2020
PASS Property color value 'lab(20 none none / none)'
2121
PASS Property color value 'lab(none none none / 0.5)'
2222
PASS Property color value 'lab(0 0 0 / none)'
23-
FAIL Property color value 'lab(calc(NaN) 0 0)' assert_equals: expected "lab(0 0 0)" but got "lab(Infinity 0 0)"
24-
FAIL Property color value 'lab(calc(0 / 0) 0 0)' assert_equals: expected "lab(0 0 0)" but got "lab(Infinity 0 0)"
23+
PASS Property color value 'lab(calc(NaN) 0 0)'
24+
PASS Property color value 'lab(calc(0 / 0) 0 0)'
2525
PASS Property color value 'oklab(0 0 0)'
2626
PASS Property color value 'oklab(0 0 0 / 1)'
2727
PASS Property color value 'oklab(0 0 0 / 0.5)'
@@ -45,8 +45,8 @@ PASS Property color value 'oklab(none none none / 0.5)'
4545
PASS Property color value 'oklab(0 0 0 / none)'
4646
PASS Property color value 'lab(20% -50% 90%/0.5)'
4747
PASS Property color value 'oklab(20% 70% -80%/0.5)'
48-
FAIL Property color value 'oklab(calc(NaN) 0 0)' assert_equals: expected "oklab(0 0 0)" but got "oklab(Infinity 0 0)"
49-
FAIL Property color value 'oklab(calc(0 / 0) 0 0)' assert_equals: expected "oklab(0 0 0)" but got "oklab(Infinity 0 0)"
48+
PASS Property color value 'oklab(calc(NaN) 0 0)'
49+
PASS Property color value 'oklab(calc(0 / 0) 0 0)'
5050
PASS Property color value 'lch(0 0 0deg)'
5151
PASS Property color value 'lch(0 0 0deg / 1)'
5252
PASS Property color value 'lch(0 0 0deg / 0.5)'
@@ -72,8 +72,8 @@ PASS Property color value 'lch(none none none)'
7272
PASS Property color value 'lch(20 none none / none)'
7373
PASS Property color value 'lch(none none none / 0.5)'
7474
PASS Property color value 'lch(0 0 0 / none)'
75-
FAIL Property color value 'lch(calc(NaN) 0 0)' assert_equals: expected "lch(0 0 0)" but got "lch(Infinity 0 0)"
76-
FAIL Property color value 'lch(calc(0 / 0) 0 0)' assert_equals: expected "lch(0 0 0)" but got "lch(Infinity 0 0)"
75+
PASS Property color value 'lch(calc(NaN) 0 0)'
76+
PASS Property color value 'lch(calc(0 / 0) 0 0)'
7777
PASS Property color value 'oklch(0 0 0deg)'
7878
PASS Property color value 'oklch(0 0 0deg / 1)'
7979
PASS Property color value 'oklch(0 0 0deg / 0.5)'
@@ -101,6 +101,6 @@ PASS Property color value 'oklch(none none none / 0.5)'
101101
PASS Property color value 'oklch(0 0 0 / none)'
102102
PASS Property color value 'lch(20% 80% 10/0.5)'
103103
PASS Property color value 'oklch(20% 60% 10/0.5)'
104-
FAIL Property color value 'oklch(calc(NaN) 0 0)' assert_equals: expected "oklch(0 0 0)" but got "oklch(Infinity 0 0)"
105-
FAIL Property color value 'oklch(calc(0 / 0) 0 0)' assert_equals: expected "oklch(0 0 0)" but got "oklch(Infinity 0 0)"
104+
PASS Property color value 'oklch(calc(NaN) 0 0)'
105+
PASS Property color value 'oklch(calc(0 / 0) 0 0)'
106106

There was a problem loading the remainder of the diff.

0 commit comments

Comments
 (0)
Failed to load comments.








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://github.com/movableink/webkit/commit/9ae1090fb3adf43b657e214bdcc56e11047db419

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy