| Index: Source/core/animation/Animation.cpp
|
| diff --git a/Source/core/animation/Animation.cpp b/Source/core/animation/Animation.cpp
|
| index 0d46063e67fec9d0681b2ddf6bce1999b8e79ed6..689f089a1e955a00b85023a6bd54a2670430d4c5 100644
|
| --- a/Source/core/animation/Animation.cpp
|
| +++ b/Source/core/animation/Animation.cpp
|
| @@ -58,14 +58,14 @@ static unsigned nextSequenceNumber()
|
|
|
| }
|
|
|
| -PassRefPtrWillBeRawPtr<Animation> Animation::create(AnimationEffect* effect, AnimationTimeline* timeline)
|
| +Animation* Animation::create(AnimationEffect* effect, AnimationTimeline* timeline)
|
| {
|
| if (!timeline) {
|
| // FIXME: Support creating animations without a timeline.
|
| return nullptr;
|
| }
|
|
|
| - RefPtrWillBeRawPtr<Animation> animation = adoptRefWillBeNoop(new Animation(timeline->document()->contextDocument().get(), *timeline, effect));
|
| + Animation* animation = new Animation(timeline->document()->contextDocument().get(), *timeline, effect);
|
| animation->suspendIfNeeded();
|
|
|
| if (timeline) {
|
| @@ -73,7 +73,7 @@ PassRefPtrWillBeRawPtr<Animation> Animation::create(AnimationEffect* effect, Ani
|
| animation->attachCompositorTimeline();
|
| }
|
|
|
| - return animation.release();
|
| + return animation;
|
| }
|
|
|
| Animation::Animation(ExecutionContext* executionContext, AnimationTimeline& timeline, AnimationEffect* content)
|
| @@ -110,14 +110,17 @@ Animation::Animation(ExecutionContext* executionContext, AnimationTimeline& time
|
|
|
| Animation::~Animation()
|
| {
|
| + destroyCompositorPlayer();
|
| +}
|
| +
|
| +void Animation::disposeAnimation()
|
| +{
|
| #if !ENABLE(OILPAN)
|
| if (m_content)
|
| m_content->detach();
|
| if (m_timeline)
|
| m_timeline->animationDestroyed(this);
|
| #endif
|
| -
|
| - destroyCompositorPlayer();
|
| }
|
|
|
| #if !ENABLE(OILPAN)
|
| @@ -1101,7 +1104,7 @@ DEFINE_TRACE(Animation)
|
| visitor->trace(m_pendingFinishedEvent);
|
| visitor->trace(m_finishedPromise);
|
| visitor->trace(m_readyPromise);
|
| - EventTargetWithInlineData::trace(visitor);
|
| + RefCountedGarbageCollectedEventTargetWithInlineData<Animation>::trace(visitor);
|
| ActiveDOMObject::trace(visitor);
|
| }
|
|
|
|
|