Bug 1226707: P2 Ensure we won't operate on a decoder that failed to initialize. r=cpearce
--- a/dom/media/MediaFormatReader.cpp
+++ b/dom/media/MediaFormatReader.cpp
@@ -414,16 +414,18 @@ MediaFormatReader::EnsureDecoderInitiali
auto& decoder = self->GetDecoderData(aTrack);
decoder.mInitPromise.Complete();
decoder.mDecoderInitialized = true;
self->ScheduleUpdate(aTrack);
},
[self, aTrack] (MediaDataDecoder::DecoderFailureReason aResult) {
auto& decoder = self->GetDecoderData(aTrack);
decoder.mInitPromise.Complete();
+ decoder.mDecoder->Shutdown();
+ decoder.mDecoder = nullptr;
self->NotifyError(aTrack);
}));
return false;
}
void
MediaFormatReader::ReadUpdatedMetadata(MediaInfo* aInfo)
{