Index: third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp |
diff --git a/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp b/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp |
index 9747909d190c672e8e721bb393c7087fed298746..199002ba26900add3c16777b503e180bdda07e81 100644 |
--- a/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp |
+++ b/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp |
@@ -2286,9 +2286,11 @@ static CSSValue* consumeRadialGradient(CSSParserTokenRange& args, CSSParserMode |
if (shape && shape->getValueID() == CSSValueEllipse && horizontalSize && !verticalSize) |
return nullptr; |
// If there's only one size, it must be a length. |
- // TODO(timloh): Calcs with both lengths and percentages should be rejected. |
if (!verticalSize && horizontalSize && horizontalSize->isPercentage()) |
return nullptr; |
+ if ((horizontalSize && horizontalSize->isCalculatedPercentageWithLength()) |
+ || (verticalSize && verticalSize->isCalculatedPercentageWithLength())) |
+ return nullptr; |
result->setShape(shape); |
result->setSizingBehavior(sizeKeyword); |