зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1258410: [MSE] P2. Disconnect init promise if any pending. r=gerald
MozReview-Commit-ID: 9iOPqSeDzdH --HG-- extra : rebase_source : a5a840c31c7f5348870dc9f9ca3a408d91a96a88
This commit is contained in:
Родитель
d2e51e6dd6
Коммит
f32aca05b7
|
@ -308,6 +308,13 @@ TrackBuffersManager::CompleteResetParserState()
|
|||
MOZ_ASSERT(OnTaskQueue());
|
||||
MSE_DEBUG("");
|
||||
|
||||
// We shouldn't change mInputDemuxer while a demuxer init/reset request is
|
||||
// being processed. See bug 1239983.
|
||||
NS_ASSERTION(!mDemuxerInitRequest.Exists(), "Previous AppendBuffer didn't complete");
|
||||
if (mDemuxerInitRequest.Exists()) {
|
||||
mDemuxerInitRequest.Disconnect();
|
||||
}
|
||||
|
||||
for (auto& track : GetTracksList()) {
|
||||
// 2. Unset the last decode timestamp on all track buffers.
|
||||
// 3. Unset the last frame duration on all track buffers.
|
||||
|
@ -882,7 +889,7 @@ TrackBuffersManager::OnDemuxerInitDone(nsresult)
|
|||
if (!mInputDemuxer) {
|
||||
// mInputDemuxer shouldn't have been destroyed while a demuxer init/reset
|
||||
// request was being processed. See bug 1239983.
|
||||
NS_WARNING("mInputDemuxer has been destroyed");
|
||||
NS_ASSERTION(false, "mInputDemuxer has been destroyed");
|
||||
RejectAppend(NS_ERROR_ABORT, __func__);
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче