Index: Source/core/css/parser/SizesCalcParser.cpp |
diff --git a/Source/core/css/parser/SizesCalcParser.cpp b/Source/core/css/parser/SizesCalcParser.cpp |
index f99688bb609de3bfc86a010742aa83edb0604c60..087339d5888af0cb6af89346e32db893861c055b 100644 |
--- a/Source/core/css/parser/SizesCalcParser.cpp |
+++ b/Source/core/css/parser/SizesCalcParser.cpp |
@@ -10,11 +10,12 @@ |
namespace WebCore { |
-bool SizesCalcParser::parse(MediaQueryTokenIterator start, MediaQueryTokenIterator end, PassRefPtr<MediaValues> mediaValues, unsigned& result) |
+bool SizesCalcParser::parse(MediaQueryTokenIterator start, MediaQueryTokenIterator end, PassRefPtr<MediaValues> mediaValues, unsigned& result, bool& viewportDependant) |
{ |
SizesCalcParser parser(mediaValues); |
if (!parser.calcToReversePolishNotation(start, end)) |
return false; |
+ viewportDependant = parser.viewportDependant(); |
return parser.calculate(result); |
} |
@@ -93,6 +94,8 @@ bool SizesCalcParser::calcToReversePolishNotation(MediaQueryTokenIterator start, |
appendNumber(*it); |
break; |
case DimensionToken: |
+ if (CSSPrimitiveValue::isViewportPercentageLength(it->unitType())) |
+ m_viewportDependant = true; |
if (!CSSPrimitiveValue::isLength(it->unitType()) || !appendLength(*it)) |
return false; |
break; |