Changeset 250730 in webkit
- Timestamp:
- Oct 4, 2019, 10:30:16 AM (6 years ago)
- Location:
- trunk
- Files:
-
- 9 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r250727 r250730 1 2019-10-04 Joonghun Park <jh718.park@samsung.com> 2 3 Negative radii in radial gradients should be rejected. 4 https://bugs.webkit.org/show_bug.cgi?id=202412 5 6 Per the spec, https://drafts.csswg.org/css-images-3/#radial-gradients 7 "Negative values are invalid.", 8 we reject negative radii values in radial-gradient. 9 10 This patch rejects negative radii during radial-gradient parsing 11 for both webkit prefixed and non-prefixed ones. 12 13 Reviewed by Antti Koivisto. 14 15 * imported/blink/css-parser/webkit-gradient-expected.txt: Added. 16 * imported/blink/css-parser/webkit-gradient.html: Added. 17 1 18 2019-10-04 youenn fablet <youenn@apple.com> 2 19 -
trunk/LayoutTests/imported/w3c/ChangeLog
r250721 r250730 1 2019-10-04 Joonghun Park <jh718.park@samsung.com> 2 3 Negative radii in radial gradients should be rejected. 4 https://bugs.webkit.org/show_bug.cgi?id=202412 5 6 Per the spec, https://drafts.csswg.org/css-images-3/#radial-gradients 7 "Negative values are invalid.", 8 we reject negative radii values in radial-gradient. 9 10 This patch rejects negative radii during radial-gradient parsing 11 for both webkit prefixed and non-prefixed ones. 12 13 Reviewed by Antti Koivisto. 14 15 * web-platform-tests/compat/webkit-radial-gradient-radii-expected.txt: Added. 16 * web-platform-tests/compat/webkit-radial-gradient-radii.html: Added. 17 * web-platform-tests/css/css-backgrounds/parsing/background-image-invalid-expected.txt: Added. 18 * web-platform-tests/css/css-backgrounds/parsing/background-image-invalid.html: Added. 19 1 20 2019-10-04 Chris Lord <clord@igalia.com> 2 21 -
trunk/Source/WebCore/ChangeLog
r250728 r250730 1 2019-10-04 Joonghun Park <jh718.park@samsung.com> 2 3 Negative radii in radial gradients should be rejected. 4 https://bugs.webkit.org/show_bug.cgi?id=202412 5 6 Per the spec, https://drafts.csswg.org/css-images-3/#radial-gradients 7 "Negative values are invalid.", 8 we reject negative radii values in radial-gradient. 9 10 This patch rejects negative radii during radial-gradient parsing 11 for both webkit prefixed and non-prefixed ones. 12 13 Reviewed by Antti Koivisto. 14 15 Tests: imported/blink/css-parser/webkit-gradient.html 16 imported/w3c/web-platform-tests/compat/webkit-radial-gradient-radii.html 17 imported/w3c/web-platform-tests/css/css-backgrounds/parsing/background-image-invalid.html 18 19 * css/parser/CSSPropertyParserHelpers.cpp: 20 (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradient): 21 (WebCore::CSSPropertyParserHelpers::consumeDeprecatedRadialGradient): 22 (WebCore::CSSPropertyParserHelpers::consumeRadialGradient): 23 1 24 2019-10-04 Alex Christensen <achristensen@webkit.org> 2 25 -
trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
r246490 r250730 996 996 return nullptr; 997 997 998 RefPtr<CSSPrimitiveValue>point = consumeDeprecatedGradientPoint(args, true);998 auto point = consumeDeprecatedGradientPoint(args, true); 999 999 if (!point) 1000 1000 return nullptr; … … 1010 1010 // For radial gradients only, we now expect a numeric radius. 1011 1011 if (isDeprecatedRadialGradient) { 1012 RefPtr<CSSPrimitiveValue> radius = consumeNumber(args, ValueRangeAll);1012 auto radius = consumeNumber(args, ValueRangeNonNegative); 1013 1013 if (!radius || !consumeCommaIncludingWhitespace(args)) 1014 1014 return nullptr; … … 1029 1029 if (!consumeCommaIncludingWhitespace(args)) 1030 1030 return nullptr; 1031 RefPtr<CSSPrimitiveValue> radius = consumeNumber(args, ValueRangeAll);1031 auto radius = consumeNumber(args, ValueRangeNonNegative); 1032 1032 if (!radius) 1033 1033 return nullptr; … … 1113 1113 result->setSecondY(centerY.copyRef()); 1114 1114 1115 RefPtr<CSSPrimitiveValue>shape = consumeIdent<CSSValueCircle, CSSValueEllipse>(args);1116 RefPtr<CSSPrimitiveValue>sizeKeyword = consumeIdent<CSSValueClosestSide, CSSValueClosestCorner, CSSValueFarthestSide, CSSValueFarthestCorner, CSSValueContain, CSSValueCover>(args);1115 auto shape = consumeIdent<CSSValueCircle, CSSValueEllipse>(args); 1116 auto sizeKeyword = consumeIdent<CSSValueClosestSide, CSSValueClosestCorner, CSSValueFarthestSide, CSSValueFarthestCorner, CSSValueContain, CSSValueCover>(args); 1117 1117 if (!shape) 1118 1118 shape = consumeIdent<CSSValueCircle, CSSValueEllipse>(args); … … 1122 1122 // Or, two lengths or percentages 1123 1123 if (!shape && !sizeKeyword) { 1124 RefPtr<CSSPrimitiveValue> horizontalSize = consumeLengthOrPercent(args, cssParserMode, ValueRangeAll);1124 auto horizontalSize = consumeLengthOrPercent(args, cssParserMode, ValueRangeNonNegative); 1125 1125 RefPtr<CSSPrimitiveValue> verticalSize; 1126 1126 if (horizontalSize) { 1127 verticalSize = consumeLengthOrPercent(args, cssParserMode, ValueRange All);1127 verticalSize = consumeLengthOrPercent(args, cssParserMode, ValueRangeNonNegative); 1128 1128 if (!verticalSize) 1129 1129 return nullptr; … … 1169 1169 } 1170 1170 } else { 1171 RefPtr<CSSPrimitiveValue> center = consumeLengthOrPercent(args, cssParserMode, ValueRangeAll);1171 auto center = consumeLengthOrPercent(args, cssParserMode, ValueRangeNonNegative); 1172 1172 if (!center) 1173 1173 break; … … 1175 1175 return nullptr; 1176 1176 horizontalSize = center; 1177 center = consumeLengthOrPercent(args, cssParserMode, ValueRange All);1177 center = consumeLengthOrPercent(args, cssParserMode, ValueRangeNonNegative); 1178 1178 if (center) { 1179 1179 verticalSize = center;
Note:
See TracChangeset
for help on using the changeset viewer.