Merge commit 'b8d7f3186e86234f6255f5e8ee9e98573b4d9a6e'

* commit 'b8d7f3186e86234f6255f5e8ee9e98573b4d9a6e':
  matroskadec: fix crash when parsing invalid mkv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2015-04-18 21:12:05 +02:00
commit f98cad8759

View File

@ -2080,8 +2080,12 @@ static int matroska_read_header(AVFormatContext *s)
matroska->cues_parsing_deferred = 1;
/* First read the EBML header. */
if (ebml_parse(matroska, ebml_syntax, &ebml) ||
ebml.version > EBML_VERSION ||
if (ebml_parse(matroska, ebml_syntax, &ebml) || !ebml.doctype) {
av_log(matroska->ctx, AV_LOG_ERROR, "EBML header parsing failed\n");
ebml_free(ebml_syntax, &ebml);
return AVERROR_INVALIDDATA;
}
if (ebml.version > EBML_VERSION ||
ebml.max_size > sizeof(uint64_t) ||
ebml.id_length > sizeof(uint32_t) ||
ebml.doctype_version > 3 ||