diff --git a/dom/media/ADTSDemuxer.cpp b/dom/media/ADTSDemuxer.cpp index cb4fe61541..16daac6d4e 100644 --- a/dom/media/ADTSDemuxer.cpp +++ b/dom/media/ADTSDemuxer.cpp @@ -846,6 +846,10 @@ ADTSDemuxer::ADTSSniffer(const uint8_t* aData, const uint32_t aLength) if (aLength < 7) { return false; } + // Avoid seeking if blob doesn't start with an ADTS marker. + if (!adts::FrameHeader::MatchesSync(aData)) { + return false; + } auto parser = MakeUnique(); if (!parser->Parse(0, aData, aData + aLength)) {