Index: Source/core/dom/MutationObserverRegistration.h |
diff --git a/Source/core/dom/MutationObserverRegistration.h b/Source/core/dom/MutationObserverRegistration.h |
index 7668c09b115c78a31a385dd3a26cf3a0bc468d6c..97d832be1e0052b5e2a3f04d4a31cb61d11d8e29 100644 |
--- a/Source/core/dom/MutationObserverRegistration.h |
+++ b/Source/core/dom/MutationObserverRegistration.h |
@@ -43,7 +43,7 @@ class QualifiedName; |
class MutationObserverRegistration FINAL : public NoBaseWillBeGarbageCollectedFinalized<MutationObserverRegistration> { |
public: |
- static PassOwnPtrWillBeRawPtr<MutationObserverRegistration> create(MutationObserver&, Node&, MutationObserverOptions, const HashSet<AtomicString>& attributeFilter); |
+ static PassOwnPtrWillBeRawPtr<MutationObserverRegistration> create(MutationObserver&, Node*, MutationObserverOptions, const HashSet<AtomicString>& attributeFilter); |
~MutationObserverRegistration(); |
void resetObservation(MutationObserverOptions, const HashSet<AtomicString>& attributeFilter); |
@@ -62,15 +62,22 @@ public: |
void addRegistrationNodesToSet(HashSet<Node*>&) const; |
void trace(Visitor*); |
+#if ENABLE(OILPAN) |
+ void clearWeakMembers(Visitor*); |
+#endif |
void dispose(); |
private: |
- MutationObserverRegistration(MutationObserver&, Node&, MutationObserverOptions, const HashSet<AtomicString>& attributeFilter); |
+ MutationObserverRegistration(MutationObserver&, Node*, MutationObserverOptions, const HashSet<AtomicString>& attributeFilter); |
RefPtrWillBeMember<MutationObserver> m_observer; |
- Node& m_registrationNode; |
+ RawPtrWillBeMember<Node> m_registrationNode; |
+#if ENABLE(OILPAN) |
+ bool m_keepAlive; |
+#else |
RefPtr<Node> m_registrationNodeKeepAlive; |
+#endif |
typedef HashSet<RefPtr<Node> > NodeHashSet; |
OwnPtr<NodeHashSet> m_transientRegistrationNodes; |