Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(505)

Side by Side Diff: Source/core/dom/MutationObserverRegistration.cpp

Issue 313023004: Oilpan: Replace RefPtr to Node in MutationObserver-related classes with Oilpan transition types. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: OwnPtrWillBeMember Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/dom/MutationObserverRegistration.h ('k') | Source/core/dom/MutationRecord.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 74
75 void MutationObserverRegistration::observedSubtreeNodeWillDetach(Node& node) 75 void MutationObserverRegistration::observedSubtreeNodeWillDetach(Node& node)
76 { 76 {
77 if (!isSubtree()) 77 if (!isSubtree())
78 return; 78 return;
79 79
80 node.registerTransientMutationObserver(this); 80 node.registerTransientMutationObserver(this);
81 m_observer->setHasTransientRegistration(); 81 m_observer->setHasTransientRegistration();
82 82
83 if (!m_transientRegistrationNodes) { 83 if (!m_transientRegistrationNodes) {
84 m_transientRegistrationNodes = adoptPtr(new NodeHashSet); 84 m_transientRegistrationNodes = adoptPtrWillBeNoop(new NodeHashSet);
85 85
86 ASSERT(m_registrationNode); 86 ASSERT(m_registrationNode);
87 ASSERT(!m_registrationNodeKeepAlive); 87 ASSERT(!m_registrationNodeKeepAlive);
88 m_registrationNodeKeepAlive = PassRefPtrWillBeRawPtr<Node>(m_registratio nNode.get()); // Balanced in clearTransientRegistrations. 88 m_registrationNodeKeepAlive = PassRefPtrWillBeRawPtr<Node>(m_registratio nNode.get()); // Balanced in clearTransientRegistrations.
89 } 89 }
90 m_transientRegistrationNodes->add(&node); 90 m_transientRegistrationNodes->add(&node);
91 } 91 }
92 92
93 void MutationObserverRegistration::clearTransientRegistrations() 93 void MutationObserverRegistration::clearTransientRegistrations()
94 { 94 {
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 return; 139 return;
140 for (NodeHashSet::const_iterator iter = m_transientRegistrationNodes->begin( ); iter != m_transientRegistrationNodes->end(); ++iter) 140 for (NodeHashSet::const_iterator iter = m_transientRegistrationNodes->begin( ); iter != m_transientRegistrationNodes->end(); ++iter)
141 nodes.add(iter->get()); 141 nodes.add(iter->get());
142 } 142 }
143 143
144 void MutationObserverRegistration::trace(Visitor* visitor) 144 void MutationObserverRegistration::trace(Visitor* visitor)
145 { 145 {
146 visitor->trace(m_observer); 146 visitor->trace(m_observer);
147 visitor->trace(m_registrationNode); 147 visitor->trace(m_registrationNode);
148 visitor->trace(m_registrationNodeKeepAlive); 148 visitor->trace(m_registrationNodeKeepAlive);
149 #if ENABLE(OILPAN)
150 visitor->trace(m_transientRegistrationNodes);
151 #endif
149 } 152 }
150 153
151 } // namespace WebCore 154 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/dom/MutationObserverRegistration.h ('k') | Source/core/dom/MutationRecord.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698