Index: Source/core/dom/NodeRareData.cpp |
diff --git a/Source/core/dom/NodeRareData.cpp b/Source/core/dom/NodeRareData.cpp |
index c29894c2a00a5f2807675c7d17679ae65a955043..9a19cec91240405b61d708da6c9e6b499b38fb5e 100644 |
--- a/Source/core/dom/NodeRareData.cpp |
+++ b/Source/core/dom/NodeRareData.cpp |
@@ -58,9 +58,20 @@ void NodeListsNodeData::invalidateCaches(const QualifiedName* attrName) |
it->value->invalidateCache(); |
} |
+#if ENABLE(OILPAN) |
+void NodeListsNodeData::clearWeakMembers(Visitor* visitor) |
+{ |
+ if (m_owner && (m_childNodeList ? 1 : 0) + m_atomicNameCaches.size() + m_tagCollectionCacheNS.size() == 0) { |
Mads Ager (chromium)
2014/05/20 06:58:57
When we make m_owner strong again we can simplify
|
+ m_owner->clearNodeLists(); |
+ m_owner.clear(); |
+ } |
+} |
+#endif |
+ |
void NodeRareData::traceAfterDispatch(Visitor* visitor) |
{ |
visitor->trace(m_mutationObserverData); |
+ visitor->trace(m_nodeLists); |
} |
void NodeRareData::trace(Visitor* visitor) |