summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/css/SelectorChecker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/css/SelectorChecker.cpp')
-rw-r--r--Source/WebCore/css/SelectorChecker.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/WebCore/css/SelectorChecker.cpp b/Source/WebCore/css/SelectorChecker.cpp
index 0f0d365c0..9b0fe19d8 100644
--- a/Source/WebCore/css/SelectorChecker.cpp
+++ b/Source/WebCore/css/SelectorChecker.cpp
@@ -912,6 +912,10 @@ bool SelectorChecker::checkOne(CheckingContext& checkingContext, const LocalCont
if (m_strictParsing || element.isLink() || canMatchHoverOrActiveInQuirksMode(context)) {
addStyleRelation(checkingContext, element, StyleRelation::AffectedByHover);
+ // See the comment in generateElementIsHovered() in SelectorCompiler.
+ if (checkingContext.resolvingMode == SelectorChecker::Mode::CollectingRulesIgnoringVirtualPseudoElements && !context.isMatchElement)
+ return true;
+
if (element.hovered() || InspectorInstrumentation::forcePseudoState(const_cast<Element&>(element), CSSSelector::PseudoClassHover))
return true;
}