| Index: third_party/WebKit/Source/core/css/RuleFeature.cpp
|
| diff --git a/third_party/WebKit/Source/core/css/RuleFeature.cpp b/third_party/WebKit/Source/core/css/RuleFeature.cpp
|
| index 7d665f6057df23c93869a1da4565b0fdfba17404..d3aaa9ba30c1584d487682a4e917b06939d02b4c 100644
|
| --- a/third_party/WebKit/Source/core/css/RuleFeature.cpp
|
| +++ b/third_party/WebKit/Source/core/css/RuleFeature.cpp
|
| @@ -610,10 +610,13 @@ RuleFeatureSet::SelectorPreMatch RuleFeatureSet::collectFeaturesFromSelector(con
|
| break;
|
| case CSSSelector::PseudoHost:
|
| case CSSSelector::PseudoHostContext:
|
| - if (relation == CSSSelector::SubSelector)
|
| + if (!foundHostPseudo && relation == CSSSelector::SubSelector)
|
| return SelectorNeverMatches;
|
| - if (!current->isLastInTagHistory() && current->tagHistory()->match() != CSSSelector::PseudoElement)
|
| + if (!current->isLastInTagHistory()
|
| + && current->tagHistory()->match() != CSSSelector::PseudoElement
|
| + && !current->tagHistory()->isHostPseudoClass()) {
|
| return SelectorNeverMatches;
|
| + }
|
| foundHostPseudo = true;
|
| // fall through.
|
| default:
|
|
|