| Index: Source/core/html/track/TextTrackList.cpp
|
| diff --git a/Source/core/html/track/TextTrackList.cpp b/Source/core/html/track/TextTrackList.cpp
|
| index 348d4abcb79586c940ff92d0e3427342c149845a..2d0fad4b4fdf384f4ee154f99a33a764d305356f 100644
|
| --- a/Source/core/html/track/TextTrackList.cpp
|
| +++ b/Source/core/html/track/TextTrackList.cpp
|
| @@ -48,10 +48,11 @@ TextTrackList::~TextTrackList()
|
| ASSERT(!m_owner);
|
|
|
| m_asyncEventQueue->close();
|
| -
|
| +#if !ENABLE(OILPAN)
|
| for (unsigned i = 0; i < length(); ++i) {
|
| item(i)->setTrackList(0);
|
| }
|
| +#endif
|
| }
|
|
|
| unsigned TextTrackList::length() const
|
| @@ -153,7 +154,7 @@ TextTrack* TextTrackList::getTrackById(const AtomicString& id)
|
|
|
| void TextTrackList::invalidateTrackIndexesAfterTrack(TextTrack* track)
|
| {
|
| - Vector<RefPtr<TextTrack> >* tracks = 0;
|
| + WillBeHeapVector<RefPtrWillBeMember<TextTrack> >* tracks = 0;
|
|
|
| if (track->trackType() == TextTrack::TrackElement) {
|
| tracks = &m_elementTracks;
|
| @@ -178,9 +179,9 @@ void TextTrackList::invalidateTrackIndexesAfterTrack(TextTrack* track)
|
| tracks->at(index)->invalidateTrackIndex();
|
| }
|
|
|
| -void TextTrackList::append(PassRefPtr<TextTrack> prpTrack)
|
| +void TextTrackList::append(PassRefPtrWillBeRawPtr<TextTrack> prpTrack)
|
| {
|
| - RefPtr<TextTrack> track = prpTrack;
|
| + RefPtrWillBeRawPtr<TextTrack> track = prpTrack;
|
|
|
| if (track->trackType() == TextTrack::AddTrack)
|
| m_addTrackTracks.append(track);
|
| @@ -205,7 +206,7 @@ void TextTrackList::append(PassRefPtr<TextTrack> prpTrack)
|
|
|
| void TextTrackList::remove(TextTrack* track)
|
| {
|
| - Vector<RefPtr<TextTrack> >* tracks = 0;
|
| + WillBeHeapVector<RefPtrWillBeMember<TextTrack> >* tracks = 0;
|
|
|
| if (track->trackType() == TextTrack::TrackElement) {
|
| tracks = &m_elementTracks;
|
| @@ -241,7 +242,7 @@ void TextTrackList::removeAllInbandTracks()
|
|
|
| bool TextTrackList::contains(TextTrack* track) const
|
| {
|
| - const Vector<RefPtr<TextTrack> >* tracks = 0;
|
| + const WillBeHeapVector<RefPtrWillBeMember<TextTrack> >* tracks = 0;
|
|
|
| if (track->trackType() == TextTrack::TrackElement)
|
| tracks = &m_elementTracks;
|
| @@ -271,7 +272,7 @@ void TextTrackList::clearOwner()
|
| m_owner = 0;
|
| }
|
|
|
| -void TextTrackList::scheduleTrackEvent(const AtomicString& eventName, PassRefPtr<TextTrack> track)
|
| +void TextTrackList::scheduleTrackEvent(const AtomicString& eventName, PassRefPtrWillBeRawPtr<TextTrack> track)
|
| {
|
| TrackEventInit initializer;
|
| initializer.track = track;
|
| @@ -281,7 +282,7 @@ void TextTrackList::scheduleTrackEvent(const AtomicString& eventName, PassRefPtr
|
| m_asyncEventQueue->enqueueEvent(TrackEvent::create(eventName, initializer));
|
| }
|
|
|
| -void TextTrackList::scheduleAddTrackEvent(PassRefPtr<TextTrack> track)
|
| +void TextTrackList::scheduleAddTrackEvent(PassRefPtrWillBeRawPtr<TextTrack> track)
|
| {
|
| // 4.8.10.12.3 Sourcing out-of-band text tracks
|
| // 4.8.10.12.4 Text track API
|
| @@ -309,7 +310,7 @@ void TextTrackList::scheduleChangeEvent()
|
| m_asyncEventQueue->enqueueEvent(Event::create(EventTypeNames::change, initializer));
|
| }
|
|
|
| -void TextTrackList::scheduleRemoveTrackEvent(PassRefPtr<TextTrack> track)
|
| +void TextTrackList::scheduleRemoveTrackEvent(PassRefPtrWillBeRawPtr<TextTrack> track)
|
| {
|
| // 4.8.10.12.3 Sourcing out-of-band text tracks
|
| // When a track element's parent element changes and the old parent was a
|
| @@ -327,3 +328,10 @@ HTMLMediaElement* TextTrackList::owner() const
|
| {
|
| return m_owner;
|
| }
|
| +
|
| +void TextTrackList::trace(Visitor* visitor)
|
| +{
|
| + visitor->trace(m_addTrackTracks);
|
| + visitor->trace(m_elementTracks);
|
| + visitor->trace(m_inbandTracks);
|
| +}
|
|
|