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

Unified Diff: Source/core/svg/SVGElement.cpp

Issue 1238083002: Oilpan: Move the EventListener hierarchy to Oilpan's heap (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/svg/SVGElement.cpp
diff --git a/Source/core/svg/SVGElement.cpp b/Source/core/svg/SVGElement.cpp
index 2d6da729a048710981647cb9bd5fb399ca4d80d3..a09193ca95954cf373245abc1afb38d7723f5364 100644
--- a/Source/core/svg/SVGElement.cpp
+++ b/Source/core/svg/SVGElement.cpp
@@ -741,9 +741,9 @@ static inline void collectInstancesForSVGElement(SVGElement* element, WillBeHeap
instances = element->instancesForElement();
}
-bool SVGElement::addEventListener(const AtomicString& eventType, PassRefPtr<EventListener> prpListener, bool useCapture)
+bool SVGElement::addEventListener(const AtomicString& eventType, PassRefPtrWillBeRawPtr<EventListener> prpListener, bool useCapture)
{
- RefPtr<EventListener> listener = prpListener;
+ RefPtrWillBeRawPtr<EventListener> listener = prpListener;
// Add event listener to regular DOM element
if (!Node::addEventListener(eventType, listener, useCapture))
@@ -760,9 +760,9 @@ bool SVGElement::addEventListener(const AtomicString& eventType, PassRefPtr<Even
return true;
}
-bool SVGElement::removeEventListener(const AtomicString& eventType, PassRefPtr<EventListener> prpListener, bool useCapture)
+bool SVGElement::removeEventListener(const AtomicString& eventType, PassRefPtrWillBeRawPtr<EventListener> prpListener, bool useCapture)
{
- RefPtr<EventListener> listener = prpListener;
+ RefPtrWillBeRawPtr<EventListener> listener = prpListener;
// Remove event listener from regular DOM element
if (!Node::removeEventListener(eventType, listener, useCapture))
@@ -786,9 +786,11 @@ static bool hasLoadListener(Element* element)
return true;
for (element = element->parentOrShadowHostElement(); element; element = element->parentOrShadowHostElement()) {
- const EventListenerVector& entry = element->getEventListeners(EventTypeNames::load);
- for (size_t i = 0; i < entry.size(); ++i) {
- if (entry[i].useCapture)
+ EventListenerVector* entry = element->getEventListeners(EventTypeNames::load);
+ if (!entry)
+ continue;
+ for (size_t i = 0; i < entry->size(); ++i) {
+ if (entry->at(i).useCapture)
return true;
}
}

Powered by Google App Engine
This is Rietveld 408576698