Chromium Code Reviews| Index: third_party/WebKit/Source/core/css/parser/CSSPropertyParserHelpers.cpp |
| diff --git a/third_party/WebKit/Source/core/css/parser/CSSPropertyParserHelpers.cpp b/third_party/WebKit/Source/core/css/parser/CSSPropertyParserHelpers.cpp |
| index f397430fb44e03be0d391ecb3d1dfda87761d647..9cc226f585fa41e4810d7653f2d8acae6fd4a764 100644 |
| --- a/third_party/WebKit/Source/core/css/parser/CSSPropertyParserHelpers.cpp |
| +++ b/third_party/WebKit/Source/core/css/parser/CSSPropertyParserHelpers.cpp |
| @@ -214,6 +214,16 @@ CSSPrimitiveValue* consumePercent(CSSParserTokenRange& range, ValueRange valueRa |
| return nullptr; |
| } |
| +bool canConsumeCalcValue(CalculationCategory category, CSSParserMode cssParserMode) |
| +{ |
| + if (category == CalcLength || category == CalcPercent || category == CalcPercentLength |
| + || (cssParserMode == SVGAttributeMode |
|
fs
2016/07/16 21:13:02
Suggested formatting:
if (<old predicate>)
retu
Shanmuga Pandi
2016/07/18 13:35:32
Done.
|
| + && (category == CalcNumber || category == CalcPercentNumber || category == CalcLengthNumber || category == CalcPercentLengthNumber))) |
| + return true; |
| + |
| + return false; |
| +} |
| + |
| CSSPrimitiveValue* consumeLengthOrPercent(CSSParserTokenRange& range, CSSParserMode cssParserMode, ValueRange valueRange, UnitlessQuirk unitless) |
| { |
| const CSSParserToken& token = range.peek(); |
| @@ -223,7 +233,7 @@ CSSPrimitiveValue* consumeLengthOrPercent(CSSParserTokenRange& range, CSSParserM |
| return consumePercent(range, valueRange); |
| CalcParser calcParser(range, valueRange); |
| if (const CSSCalcValue* calculation = calcParser.value()) { |
| - if (calculation->category() == CalcLength || calculation->category() == CalcPercent || calculation->category() == CalcPercentLength) |
| + if (canConsumeCalcValue(calculation->category(), cssParserMode)) |
| return calcParser.consumeValue(); |
| } |
| return nullptr; |