| Index: Source/core/html/track/TextTrackList.h | 
| diff --git a/Source/core/html/track/TextTrackList.h b/Source/core/html/track/TextTrackList.h | 
| index bc70584e39e576c5a437b89ffbea9c9206d14bcd..5f20170fe27378c03ef4d0986d88a1b5e4f1912d 100644 | 
| --- a/Source/core/html/track/TextTrackList.h | 
| +++ b/Source/core/html/track/TextTrackList.h | 
| @@ -31,6 +31,7 @@ | 
| #include "core/events/EventTarget.h" | 
| #include "core/html/HTMLMediaElement.h" | 
| #include "platform/Timer.h" | 
| +#include "platform/heap/Handle.h" | 
| #include "wtf/PassRefPtr.h" | 
| #include "wtf/RefCounted.h" | 
| #include "wtf/Vector.h" | 
| @@ -40,14 +41,15 @@ namespace WebCore { | 
| class GenericEventQueue; | 
| class TextTrack; | 
|  | 
| -class TextTrackList FINAL : public RefCounted<TextTrackList>, public ScriptWrappable, public EventTargetWithInlineData { | 
| -    REFCOUNTED_EVENT_TARGET(TextTrackList); | 
| +class TextTrackList FINAL : public RefCountedWillBeRefCountedGarbageCollected<TextTrackList>, public ScriptWrappable, public EventTargetWithInlineData { | 
| +    DEFINE_EVENT_TARGET_REFCOUNTING(RefCountedWillBeRefCountedGarbageCollected<TextTrackList>); | 
| public: | 
| -    static PassRefPtr<TextTrackList> create(HTMLMediaElement* owner) | 
| +    static PassRefPtrWillBeRawPtr<TextTrackList> create(HTMLMediaElement* owner) | 
| { | 
| -        return adoptRef(new TextTrackList(owner)); | 
| +        return adoptRefWillBeRefCountedGarbageCollected(new TextTrackList(owner)); | 
| } | 
| virtual ~TextTrackList(); | 
| +    void dispose(); | 
|  | 
| unsigned length() const; | 
| int getTrackIndex(TextTrack*); | 
| @@ -56,7 +58,7 @@ public: | 
|  | 
| TextTrack* item(unsigned index); | 
| TextTrack* getTrackById(const AtomicString& id); | 
| -    void append(PassRefPtr<TextTrack>); | 
| +    void append(PassRefPtrWillBeRawPtr<TextTrack>); | 
| void remove(TextTrack*); | 
|  | 
| // EventTarget | 
| @@ -73,13 +75,15 @@ public: | 
| void scheduleChangeEvent(); | 
| void removeAllInbandTracks(); | 
|  | 
| +    void trace(Visitor*); | 
| + | 
| private: | 
| explicit TextTrackList(HTMLMediaElement*); | 
|  | 
| -    void scheduleTrackEvent(const AtomicString& eventName, PassRefPtr<TextTrack>); | 
| +    void scheduleTrackEvent(const AtomicString& eventName, PassRefPtrWillBeRawPtr<TextTrack>); | 
|  | 
| -    void scheduleAddTrackEvent(PassRefPtr<TextTrack>); | 
| -    void scheduleRemoveTrackEvent(PassRefPtr<TextTrack>); | 
| +    void scheduleAddTrackEvent(PassRefPtrWillBeRawPtr<TextTrack>); | 
| +    void scheduleRemoveTrackEvent(PassRefPtrWillBeRawPtr<TextTrack>); | 
|  | 
| void invalidateTrackIndexesAfterTrack(TextTrack*); | 
|  | 
| @@ -87,9 +91,9 @@ private: | 
|  | 
| OwnPtr<GenericEventQueue> m_asyncEventQueue; | 
|  | 
| -    Vector<RefPtr<TextTrack> > m_addTrackTracks; | 
| -    Vector<RefPtr<TextTrack> > m_elementTracks; | 
| -    Vector<RefPtr<TextTrack> > m_inbandTracks; | 
| +    WillBeHeapVector<RefPtrWillBeMember<TextTrack> > m_addTrackTracks; | 
| +    WillBeHeapVector<RefPtrWillBeMember<TextTrack> > m_elementTracks; | 
| +    WillBeHeapVector<RefPtrWillBeMember<TextTrack> > m_inbandTracks; | 
| }; | 
|  | 
| } // namespace WebCore | 
|  |