Index: Source/core/svg/animation/SVGSMILElement.cpp |
diff --git a/Source/core/svg/animation/SVGSMILElement.cpp b/Source/core/svg/animation/SVGSMILElement.cpp |
index f91e40531003a383305ee5a40545281040fbb004..2d8ac3c298412a98aad4a82cb8c1b5f773352a9c 100644 |
--- a/Source/core/svg/animation/SVGSMILElement.cpp |
+++ b/Source/core/svg/animation/SVGSMILElement.cpp |
@@ -169,7 +169,7 @@ SVGSMILElement::Condition::Condition(Type type, BeginOrEnd beginOrEnd, const Str |
SVGSMILElement::SVGSMILElement(const QualifiedName& tagName, Document& doc) |
: SVGElement(tagName, doc) |
, m_attributeName(anyQName()) |
- , m_targetElement(0) |
+ , m_targetElement(nullptr) |
, m_syncBaseConditionsConnected(false) |
, m_hasEndEventConditions(false) |
, m_isWaitingForFirstInterval(true) |
@@ -199,9 +199,11 @@ SVGSMILElement::~SVGSMILElement() |
smilBeginEventSender().cancelEvent(this); |
smilRepeatEventSender().cancelEvent(this); |
smilRepeatNEventSender().cancelEvent(this); |
+#if !ENABLE(OILPAN) |
clearConditions(); |
if (m_timeContainer && m_targetElement && hasValidAttributeName()) |
m_timeContainer->unschedule(this, m_targetElement, m_attributeName); |
+#endif |
} |
void SVGSMILElement::clearResourceAndEventBaseReferences() |
@@ -1330,4 +1332,10 @@ void SVGSMILElement::dispatchPendingEvent(SMILEventSender* eventSender) |
} |
} |
+void SVGSMILElement::trace(Visitor* visitor) |
+{ |
+ visitor->trace(m_targetElement); |
+ SVGElement::trace(visitor); |
+} |
+ |
} |