Index: third_party/WebKit/Source/core/css/parser/CSSParser.cpp |
diff --git a/third_party/WebKit/Source/core/css/parser/CSSParser.cpp b/third_party/WebKit/Source/core/css/parser/CSSParser.cpp |
index b0c557b4aa6e67c6121052b44112280a222c9f0e..ab4d97bf9aff0b0d0974be896d6862a26cebe5ab 100644 |
--- a/third_party/WebKit/Source/core/css/parser/CSSParser.cpp |
+++ b/third_party/WebKit/Source/core/css/parser/CSSParser.cpp |
@@ -21,21 +21,21 @@ |
namespace blink { |
-bool CSSParser::parseDeclarationList(const CSSParserContext& context, |
+bool CSSParser::parseDeclarationList(const CSSParserContext* context, |
MutableStylePropertySet* propertySet, |
const String& declaration) { |
return CSSParserImpl::parseDeclarationList(propertySet, declaration, context); |
} |
void CSSParser::parseDeclarationListForInspector( |
- const CSSParserContext& context, |
+ const CSSParserContext* context, |
const String& declaration, |
CSSParserObserver& observer) { |
CSSParserImpl::parseDeclarationListForInspector(declaration, context, |
observer); |
} |
-CSSSelectorList CSSParser::parseSelector(const CSSParserContext& context, |
+CSSSelectorList CSSParser::parseSelector(const CSSParserContext* context, |
StyleSheetContents* styleSheetContents, |
const String& selector) { |
CSSTokenizer tokenizer(selector); |
@@ -44,7 +44,7 @@ CSSSelectorList CSSParser::parseSelector(const CSSParserContext& context, |
} |
CSSSelectorList CSSParser::parsePageSelector( |
- const CSSParserContext& context, |
+ const CSSParserContext* context, |
StyleSheetContents* styleSheetContents, |
const String& selector) { |
CSSTokenizer tokenizer(selector); |
@@ -52,14 +52,14 @@ CSSSelectorList CSSParser::parsePageSelector( |
styleSheetContents); |
} |
-StyleRuleBase* CSSParser::parseRule(const CSSParserContext& context, |
+StyleRuleBase* CSSParser::parseRule(const CSSParserContext* context, |
StyleSheetContents* styleSheet, |
const String& rule) { |
return CSSParserImpl::parseRule(rule, context, styleSheet, |
CSSParserImpl::AllowImportRules); |
} |
-void CSSParser::parseSheet(const CSSParserContext& context, |
+void CSSParser::parseSheet(const CSSParserContext* context, |
StyleSheetContents* styleSheet, |
const String& text, |
bool deferPropertyParsing) { |
@@ -67,7 +67,7 @@ void CSSParser::parseSheet(const CSSParserContext& context, |
deferPropertyParsing); |
} |
-void CSSParser::parseSheetForInspector(const CSSParserContext& context, |
+void CSSParser::parseSheetForInspector(const CSSParserContext* context, |
StyleSheetContents* styleSheet, |
const String& text, |
CSSParserObserver& observer) { |
@@ -79,6 +79,15 @@ MutableStylePropertySet::SetResult CSSParser::parseValue( |
MutableStylePropertySet* declaration, |
CSSPropertyID unresolvedProperty, |
const String& string, |
+ bool important) { |
+ return parseValue(declaration, unresolvedProperty, string, important, |
+ static_cast<StyleSheetContents*>(nullptr)); |
+} |
+ |
+MutableStylePropertySet::SetResult CSSParser::parseValue( |
+ MutableStylePropertySet* declaration, |
+ CSSPropertyID unresolvedProperty, |
+ const String& string, |
bool important, |
StyleSheetContents* styleSheet) { |
if (string.isEmpty()) { |
@@ -97,10 +106,12 @@ MutableStylePropertySet::SetResult CSSParser::parseValue( |
CSSProperty(resolvedProperty, *value, important)); |
return MutableStylePropertySet::SetResult{didParse, didChange}; |
} |
- CSSParserContext context(parserMode, nullptr); |
+ CSSParserContext* context; |
if (styleSheet) { |
- context = styleSheet->parserContext(); |
- context.setMode(parserMode); |
+ context = CSSParserContext::create(styleSheet->parserContext(), nullptr); |
+ context->setMode(parserMode); |
+ } else { |
+ context = CSSParserContext::create(parserMode); |
} |
return parseValue(declaration, unresolvedProperty, string, important, |
context); |
@@ -121,10 +132,12 @@ MutableStylePropertySet::SetResult CSSParser::parseValueForCustomProperty( |
return MutableStylePropertySet::SetResult{didParse, didChange}; |
} |
CSSParserMode parserMode = declaration->cssParserMode(); |
- CSSParserContext context(parserMode, nullptr); |
+ CSSParserContext* context; |
if (styleSheet) { |
- context = styleSheet->parserContext(); |
- context.setMode(parserMode); |
+ context = CSSParserContext::create(styleSheet->parserContext(), nullptr); |
+ context->setMode(parserMode); |
+ } else { |
+ context = CSSParserContext::create(parserMode); |
} |
return CSSParserImpl::parseVariableValue(declaration, propertyName, registry, |
value, important, context, |
@@ -141,18 +154,18 @@ MutableStylePropertySet::SetResult CSSParser::parseValue( |
CSSPropertyID unresolvedProperty, |
const String& string, |
bool important, |
- const CSSParserContext& context) { |
+ const CSSParserContext* context) { |
return CSSParserImpl::parseValue(declaration, unresolvedProperty, string, |
important, context); |
} |
const CSSValue* CSSParser::parseSingleValue(CSSPropertyID propertyID, |
const String& string, |
- const CSSParserContext& context) { |
+ const CSSParserContext* context) { |
if (string.isEmpty()) |
return nullptr; |
if (CSSValue* value = CSSParserFastPaths::maybeParseValue(propertyID, string, |
- context.mode())) |
+ context->mode())) |
return value; |
CSSTokenizer tokenizer(string); |
return CSSPropertyParser::parseSingleValue(propertyID, tokenizer.tokenRange(), |
@@ -170,7 +183,7 @@ std::unique_ptr<Vector<double>> CSSParser::parseKeyframeKeyList( |
return CSSParserImpl::parseKeyframeKeyList(keyList); |
} |
-StyleRuleKeyframe* CSSParser::parseKeyframeRule(const CSSParserContext& context, |
+StyleRuleKeyframe* CSSParser::parseKeyframeRule(const CSSParserContext* context, |
const String& rule) { |
StyleRuleBase* keyframe = CSSParserImpl::parseRule( |
rule, context, nullptr, CSSParserImpl::KeyframeRules); |
@@ -221,7 +234,7 @@ bool CSSParser::parseSystemColor(Color& color, const String& colorString) { |
const CSSValue* CSSParser::parseFontFaceDescriptor( |
CSSPropertyID propertyID, |
const String& propertyValue, |
- const CSSParserContext& context) { |
+ const CSSParserContext* context) { |
StringBuilder builder; |
builder.append("@font-face { "); |
builder.append(getPropertyNameString(propertyID)); |