Chromium Code Reviews| Index: Source/core/svg/animation/SMILTimeContainer.h |
| diff --git a/Source/core/svg/animation/SMILTimeContainer.h b/Source/core/svg/animation/SMILTimeContainer.h |
| index 84925746f63cdf17080a2b70737b22177b1c4cae..d822e4546ca77bb1b6919b6728252e5255f09367 100644 |
| --- a/Source/core/svg/animation/SMILTimeContainer.h |
| +++ b/Source/core/svg/animation/SMILTimeContainer.h |
| @@ -29,6 +29,7 @@ |
| #include "core/dom/QualifiedName.h" |
| #include "core/svg/animation/SMILTime.h" |
| #include "platform/Timer.h" |
| +#include "platform/heap/Handle.h" |
| #include "wtf/HashMap.h" |
| #include "wtf/HashSet.h" |
| #include "wtf/PassRefPtr.h" |
| @@ -43,9 +44,9 @@ class SVGElement; |
| class SVGSMILElement; |
| class SVGSVGElement; |
| -class SMILTimeContainer : public RefCounted<SMILTimeContainer> { |
| +class SMILTimeContainer : public RefCountedWillBeGarbageCollectedFinalized<SMILTimeContainer> { |
| public: |
| - static PassRefPtr<SMILTimeContainer> create(SVGSVGElement& owner) { return adoptRef(new SMILTimeContainer(owner)); } |
| + static PassRefPtrWillBeRawPtr<SMILTimeContainer> create(SVGSVGElement& owner) { return adoptRefWillBeNoop(new SMILTimeContainer(owner)); } |
| ~SMILTimeContainer(); |
| void schedule(SVGSMILElement*, SVGElement*, const QualifiedName&); |
| @@ -67,6 +68,8 @@ public: |
| void setDocumentOrderIndexesDirty() { m_documentOrderIndexesDirty = true; } |
| + void trace(Visitor*); |
| + |
| private: |
| SMILTimeContainer(SVGSVGElement& owner); |
|
haraken
2014/05/26 08:27:27
Add explicit.
kouhei (in TOK)
2014/05/26 08:55:28
Done.
|
| @@ -108,9 +111,9 @@ private: |
| Timer<SMILTimeContainer> m_wakeupTimer; |
| - typedef pair<SVGElement*, QualifiedName> ElementAttributePair; |
| - typedef Vector<SVGSMILElement*> AnimationsVector; |
| - typedef HashMap<ElementAttributePair, OwnPtr<AnimationsVector> > GroupedAnimationsMap; |
| + typedef pair<RawPtrWillBeWeakMember<SVGElement>, QualifiedName> ElementAttributePair; |
|
haraken
2014/05/26 08:27:27
- Did you confirm that weak processing for pairs w
kouhei (in TOK)
2014/05/26 08:55:28
No. I'll add it on HeapTest.cpp
kouhei (in TOK)
2014/05/26 09:12:48
Actually they are not deleted per HeapTest_HeapWea
haraken
2014/05/26 09:17:56
Erik@: Would you give us any advice? :)
|
| + typedef WillBeHeapVector<RawPtrWillBeMember<SVGSMILElement> > AnimationsVector; |
| + typedef WillBeHeapHashMap<ElementAttributePair, OwnPtrWillBeMember<AnimationsVector> > GroupedAnimationsMap; |
| GroupedAnimationsMap m_scheduledAnimations; |
| SVGSVGElement& m_ownerSVGElement; |