Index: third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp |
diff --git a/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp b/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp |
index 92e75170fa0a97bd7b82ae5fc521192534c75cba..2f28c889083824c4dae0bf689acd1b24d922306e 100644 |
--- a/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp |
+++ b/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp |
@@ -442,7 +442,7 @@ std::unique_ptr<CSSParserSelector> CSSSelectorParser::ConsumePseudo( |
AtomicString value = token.Value().ToAtomicString().LowerASCII(); |
bool has_arguments = token.GetType() == kFunctionToken; |
- selector->UpdatePseudoType(value, has_arguments); |
+ selector->UpdatePseudoType(value, *context_, has_arguments); |
if (!RuntimeEnabledFeatures::cssSelectorsFocusWithinEnabled() && |
selector->GetPseudoType() == CSSSelector::kPseudoFocusWithin) |
@@ -582,7 +582,8 @@ CSSSelector::RelationType CSSSelectorParser::ConsumeCombinator( |
const CSSParserToken& slash = range.ConsumeIncludingWhitespace(); |
if (slash.GetType() != kDelimiterToken || slash.Delimiter() != '/') |
failed_parsing_ = true; |
- return CSSSelector::kShadowDeep; |
+ return context_->IsDynamicProfile() ? CSSSelector::kShadowDeepAsDescendant |
+ : CSSSelector::kShadowDeep; |
} |
default: |
@@ -811,6 +812,7 @@ CSSSelectorParser::SplitCompoundAtImplicitShadowCrossingCombinator( |
std::unique_ptr<CSSParserSelector> second_compound = |
split_after->ReleaseTagHistory(); |
+ // TODO: Check second_compound->GetPseudoType() |
kochi
2017/05/09 14:29:38
What does this mean?
hayato
2017/05/10 06:57:04
This was my private TODO which I forgot to remove.
kochi
2017/05/11 02:29:07
Acknowledged.
|
second_compound->AppendTagHistory( |
second_compound->GetPseudoType() == CSSSelector::kPseudoSlotted |
? CSSSelector::kShadowSlot |