From 5763f675024765df8f256d8b5b01926a5fbd997d Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Mon, 9 Feb 2015 14:51:03 +0100 Subject: [PATCH] avformat/mov: Check dimensions before setting aspect Fixes division by 0 Fixes: asan_heap-uaf_143f420_728_cov_1441472032_HDV_0113.MP4 Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- libavformat/mov.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index e5dd1bd3fa..52b6728544 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -2630,7 +2630,8 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom) } if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO) { - if (!st->sample_aspect_ratio.num && + if (!st->sample_aspect_ratio.num && st->codec->width && st->codec->height && + sc->height && sc->width && (st->codec->width != sc->width || st->codec->height != sc->height)) { st->sample_aspect_ratio = av_d2q(((double)st->codec->height * sc->width) / ((double)st->codec->width * sc->height), INT_MAX);