From: Ronald S. Bultje Date: Sat, 29 Oct 2011 23:17:51 +0000 (-0700) Subject: matroskadec: empty blocks are in fact valid. X-Git-Tag: n0.9~57^2~215 X-Git-Url: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff_plain;h=d31fb1a9e77f37ee1bbc0faabc655390eb91b579 matroskadec: empty blocks are in fact valid. --- diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 3f48a72c8e..a40aa1c469 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -1679,11 +1679,12 @@ static int matroska_parse_block(MatroskaDemuxContext *matroska, uint8_t *data, size -= n; track = matroska_find_track_by_num(matroska, num); - if (size <= 3 || !track || !track->stream) { + if (!track || !track->stream) { av_log(matroska->ctx, AV_LOG_INFO, "Invalid stream %"PRIu64" or size %u\n", num, size); return AVERROR_INVALIDDATA; - } + } else if (size <= 3) + return 0; st = track->stream; if (st->discard >= AVDISCARD_ALL) return res;