Index: Source/core/css/TreeBoundaryCrossingRules.cpp |
diff --git a/Source/core/css/TreeBoundaryCrossingRules.cpp b/Source/core/css/TreeBoundaryCrossingRules.cpp |
index 503eb839a9988fed48b940fa82369c9ba1b8dc06..4d3b123d3bcaeaaee00f1bf800be67571b2070e3 100644 |
--- a/Source/core/css/TreeBoundaryCrossingRules.cpp |
+++ b/Source/core/css/TreeBoundaryCrossingRules.cpp |
@@ -79,12 +79,9 @@ void TreeBoundaryCrossingRules::collectTreeBoundaryCrossingRules(Element* elemen |
unsigned boundaryBehavior = SelectorChecker::ScopeContainsLastMatchedElement; |
bool isInnerTreeScope = element->treeScope().isInclusiveAncestorOf(scopingNode->treeScope()); |
- // If a given scoping node is a shadow root, |
- // we should use ScopeIsShadowHost. |
- if (scopingNode && scopingNode->isShadowRoot()) { |
- boundaryBehavior |= SelectorChecker::ScopeIsShadowHost; |
- scopingNode = toShadowRoot(scopingNode)->host(); |
- } |
+ // If a given scoping node is a shadow root, we should use ScopeIsShadowRoot. |
+ if (scopingNode && scopingNode->isShadowRoot()) |
+ boundaryBehavior |= SelectorChecker::ScopeIsShadowRoot; |
CascadeOrder cascadeOrder = isInnerTreeScope ? innerCascadeOrder : outerCascadeOrder; |
for (CSSStyleSheetRuleSubSet::iterator it = ruleSubSet->begin(); it != ruleSubSet->end(); ++it) { |