Bug 1319486 - Remove the old relation when adding cue to a new TextTrack. r=rillian
MozReview-Commit-ID: GScxPQWMUTR
--- a/dom/media/TextTrack.cpp
+++ b/dom/media/TextTrack.cpp
@@ -131,16 +131,21 @@ TextTrack::GetId(nsAString& aId) const
if (mTrackElement) {
mTrackElement->GetAttribute(NS_LITERAL_STRING("id"), aId);
}
}
void
TextTrack::AddCue(TextTrackCue& aCue)
{
+ TextTrack* oldTextTrack = aCue.GetTrack();
+ if (oldTextTrack) {
+ ErrorResult dummy;
+ oldTextTrack->RemoveCue(aCue, dummy);
+ }
mCueList->AddCue(aCue);
aCue.SetTrack(this);
if (mTextTrackList) {
HTMLMediaElement* mediaElement = mTextTrackList->GetMediaElement();
if (mediaElement && (mMode != TextTrackMode::Disabled)) {
mediaElement->NotifyCueAdded(aCue);
}
}