| Index: Source/core/css/parser/CSSParserImpl.cpp
|
| diff --git a/Source/core/css/parser/CSSParserImpl.cpp b/Source/core/css/parser/CSSParserImpl.cpp
|
| index 9998d53ba617b90460269c363ef4511dde2b1f99..b9df04bc5a5ee5963b7a4878215c8b9f56f9204d 100644
|
| --- a/Source/core/css/parser/CSSParserImpl.cpp
|
| +++ b/Source/core/css/parser/CSSParserImpl.cpp
|
| @@ -176,14 +176,18 @@ void CSSParserImpl::parseDeclarationListForInspector(const String& declaration,
|
| parser.consumeDeclarationList(scope.tokenRange(), StyleRule::Style);
|
| }
|
|
|
| -void CSSParserImpl::parseStyleSheetForInspector(const String& string, const CSSParserContext& context, CSSParserObserver& observer)
|
| +void CSSParserImpl::parseStyleSheetForInspector(const String& string, const CSSParserContext& context, StyleSheetContents* styleSheet, CSSParserObserver& observer)
|
| {
|
| - RefPtrWillBeRawPtr<StyleSheetContents> sheet = StyleSheetContents::create(strictCSSParserContext());
|
| - CSSParserImpl parser(context, sheet.get());
|
| + CSSParserImpl parser(context, styleSheet);
|
| CSSParserObserverWrapper wrapper(observer);
|
| parser.m_observerWrapper = &wrapper;
|
| CSSTokenizer::Scope scope(string, wrapper);
|
| - parser.consumeRuleList(scope.tokenRange(), TopLevelRuleList, [](PassRefPtrWillBeRawPtr<StyleRuleBase> rule) { });
|
| + bool firstRuleValid = parser.consumeRuleList(scope.tokenRange(), TopLevelRuleList, [&styleSheet](PassRefPtrWillBeRawPtr<StyleRuleBase> rule) {
|
| + if (rule->isCharsetRule())
|
| + return;
|
| + styleSheet->parserAppendRule(rule);
|
| + });
|
| + styleSheet->setHasSyntacticallyValidCSSHeader(firstRuleValid);
|
| }
|
|
|
| static CSSParserImpl::AllowedRulesType computeNewAllowedRules(CSSParserImpl::AllowedRulesType allowedRules, StyleRuleBase* rule)
|
|
|