| Index: Source/core/css/ElementRuleCollector.cpp
|
| diff --git a/Source/core/css/ElementRuleCollector.cpp b/Source/core/css/ElementRuleCollector.cpp
|
| index 6675cdce6afe0e97480559f4f9dfe2e77b8200f1..e0437c5ca1fe8744c520d113cc6f51a26279594f 100644
|
| --- a/Source/core/css/ElementRuleCollector.cpp
|
| +++ b/Source/core/css/ElementRuleCollector.cpp
|
| @@ -37,7 +37,6 @@
|
| #include "core/css/CSSStyleRule.h"
|
| #include "core/css/CSSStyleSheet.h"
|
| #include "core/css/CSSSupportsRule.h"
|
| -#include "core/css/SelectorCheckerFastPath.h"
|
| #include "core/css/SiblingTraversalStrategies.h"
|
| #include "core/css/StylePropertySet.h"
|
| #include "core/css/resolver/StyleResolver.h"
|
| @@ -259,29 +258,6 @@ void ElementRuleCollector::sortAndTransferMatchedRules()
|
|
|
| inline bool ElementRuleCollector::ruleMatches(const RuleData& ruleData, const ContainerNode* scope, SelectorChecker::BehaviorAtBoundary behaviorAtBoundary, SelectorChecker::MatchResult* result)
|
| {
|
| - // Scoped rules can't match because the fast path uses a pool of tag/class/ids, collected from
|
| - // elements in that tree and those will never match the host, since it's in a different pool.
|
| - if (ruleData.hasFastCheckableSelector() && !scope) {
|
| - // We know this selector does not include any pseudo elements.
|
| - if (m_pseudoStyleRequest.pseudoId != NOPSEUDO)
|
| - return false;
|
| - // We know a sufficiently simple single part selector matches simply because we found it from the rule hash.
|
| - // This is limited to HTML only so we don't need to check the namespace.
|
| - ASSERT(m_context.element());
|
| - if (ruleData.hasRightmostSelectorMatchingHTMLBasedOnRuleHash() && m_context.element()->isHTMLElement()) {
|
| - if (!ruleData.hasMultipartSelector())
|
| - return true;
|
| - }
|
| - if (ruleData.selector().m_match == CSSSelector::Tag && !SelectorChecker::tagMatches(*m_context.element(), ruleData.selector().tagQName()))
|
| - return false;
|
| - SelectorCheckerFastPath selectorCheckerFastPath(ruleData.selector(), *m_context.element());
|
| - if (!selectorCheckerFastPath.matchesRightmostAttributeSelector())
|
| - return false;
|
| -
|
| - return selectorCheckerFastPath.matches();
|
| - }
|
| -
|
| - // Slow path.
|
| SelectorChecker selectorChecker(m_context.element()->document(), m_mode);
|
| SelectorChecker::SelectorCheckingContext context(ruleData.selector(), m_context.element(), SelectorChecker::VisitedMatchEnabled);
|
| context.elementStyle = m_style.get();
|
|
|