Index: Source/core/css/RuleFeature.cpp |
diff --git a/Source/core/css/RuleFeature.cpp b/Source/core/css/RuleFeature.cpp |
index fe9e40e0dd322807423bb9f00dd762d57573aa87..42f039951dff4ca6ccc4066cc9cb70779a21a559 100644 |
--- a/Source/core/css/RuleFeature.cpp |
+++ b/Source/core/css/RuleFeature.cpp |
@@ -109,8 +109,9 @@ RuleFeatureSet::InvalidationSetMode RuleFeatureSet::invalidationSetModeForSelect |
bool foundIdent = false; |
for (const CSSSelector* component = &selector; component; component = component->tagHistory()) { |
- // FIXME: next up: Tag. |
- if (component->m_match == CSSSelector::Class || component->m_match == CSSSelector::Id || component->isAttributeSelector() || component->isCustomPseudoElement()) { |
+ if (component->m_match == CSSSelector::Class || component->m_match == CSSSelector::Id |
+ || (component->m_match == CSSSelector::Tag && component->tagQName().localName() != starAtom) |
+ || component->isAttributeSelector() || component->isCustomPseudoElement()) { |
if (!foundDescendantRelation) |
foundIdent = true; |
} else if (component->pseudoType() == CSSSelector::PseudoHost || component->pseudoType() == CSSSelector::PseudoAny) { |