| 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;
|
| }
|
| }
|
|
|