Index: Source/core/dom/Document.h |
diff --git a/Source/core/dom/Document.h b/Source/core/dom/Document.h |
index 7d98dc56b77c828756dc905535848fdee6d2403b..89100152a7cb61a22bfd45f4af891c365aaabc3a 100644 |
--- a/Source/core/dom/Document.h |
+++ b/Source/core/dom/Document.h |
@@ -649,6 +649,8 @@ public: |
void registerNodeList(LiveNodeListBase*); |
void unregisterNodeList(LiveNodeListBase*); |
+ void incrementNodeListWithIdNameCacheCount(); |
+ void decrementNodeListWithIdNameCacheCount(); |
bool shouldInvalidateNodeListCaches(const QualifiedName* attrName = 0) const; |
void invalidateNodeListCaches(const QualifiedName* attrName); |
@@ -1367,6 +1369,17 @@ inline bool Document::shouldOverrideLegacyDescription(ViewportDescription::Type |
return origin >= m_legacyViewportDescription.type; |
} |
+inline void Document::incrementNodeListWithIdNameCacheCount() |
+{ |
+ m_nodeListCounts[InvalidateOnIdNameAttrChange]++; |
+} |
+ |
+inline void Document::decrementNodeListWithIdNameCacheCount() |
+{ |
+ ASSERT(m_nodeListCounts[InvalidateOnIdNameAttrChange] > 0); |
+ m_nodeListCounts[InvalidateOnIdNameAttrChange]--; |
+} |
+ |
DEFINE_TYPE_CASTS(Document, ExecutionContextClient, client, client->isDocument(), client.isDocument()); |
DEFINE_TYPE_CASTS(Document, ExecutionContext, context, context->isDocument(), context.isDocument()); |
DEFINE_NODE_TYPE_CASTS(Document, isDocumentNode()); |