Bug 1294605 - Notify MediaStreamTrackSource when ReadyState is overriden. r=jib

MozReview-Commit-ID: CSRWgYt4hqe

--HG--
extra : rebase_source : 2dca4336be2ded296d6ec780092227ba4e37f922
extra : intermediate-source : d86d58ab990c2c9c5cc5969e5822d3235ac47986
extra : source : 8e71a7a649109d03cebe039ee787edb32631e31f
This commit is contained in:
Andreas Pehrson 2016-08-22 18:28:10 +02:00
Родитель 17e5482a6b
Коммит 92faa5f2f5
2 изменённых файлов: 17 добавлений и 1 удалений

Просмотреть файл

@ -387,6 +387,22 @@ MediaStreamTrack::Clone()
return newStream->CloneDOMTrack(*this, mTrackID);
}
void
MediaStreamTrack::SetReadyState(MediaStreamTrackState aState)
{
MOZ_ASSERT(!(mReadyState == MediaStreamTrackState::Ended &&
aState == MediaStreamTrackState::Live),
"We don't support overriding the ready state from ended to live");
if (mReadyState == MediaStreamTrackState::Live &&
aState == MediaStreamTrackState::Ended &&
mSource) {
mSource->UnregisterSink(this);
}
mReadyState = aState;
}
void
MediaStreamTrack::NotifyEnded()
{

Просмотреть файл

@ -297,7 +297,7 @@ public:
* Forces the ready state to a particular value, for instance when we're
* cloning an already ended track.
*/
void SetReadyState(MediaStreamTrackState aState) { mReadyState = aState; }
void SetReadyState(MediaStreamTrackState aState);
/**
* Notified by the MediaStreamGraph, through our owning MediaStream on the