Index: Source/core/css/RuleFeature.cpp |
diff --git a/Source/core/css/RuleFeature.cpp b/Source/core/css/RuleFeature.cpp |
index d29f5b75ac7b860ef066bb81667b3a7b47b1cc79..9d54ac745702282b33add8f481f824c765448d7a 100644 |
--- a/Source/core/css/RuleFeature.cpp |
+++ b/Source/core/css/RuleFeature.cpp |
@@ -318,7 +318,7 @@ void RuleFeatureSet::updateInvalidationSetsForContentAttribute(const RuleData& r |
CSSFunctionValue* functionValue = toCSSFunctionValue(item.get()); |
if (functionValue->functionType() != CSSValueAttr) |
continue; |
- ensureAttributeInvalidationSet(AtomicString(toCSSPrimitiveValue(functionValue->item(0))->getStringValue())); |
+ ensureAttributeInvalidationSet(AtomicString(toCSSPrimitiveValue(functionValue->item(0))->getStringValue())).setAppliesDirectly(); |
} |
} |
@@ -330,7 +330,9 @@ RuleFeatureSet::extractInvalidationSetFeatures(const CSSSelector& selector, Inva |
if (!negated) |
foundFeatures |= extractInvalidationSetFeature(*current, features); |
// Initialize the entry in the invalidation set map, if supported. |
- if (!invalidationSetForSelector(*current)) { |
+ if (InvalidationSet* invalidationSet = invalidationSetForSelector(*current)) { |
+ invalidationSet->setAppliesDirectly(); |
+ } else { |
if (requiresSubtreeInvalidation(*current)) { |
// Fall back to use subtree invalidations, even for features in the |
// rightmost compound selector. Returning the start &selector here |