From 709c87109dc856abff9c905dfda3ca954453828a Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Thu, 17 Nov 2016 19:02:14 +0100 Subject: [PATCH] avformat/movenc: Check frame rate before use. Fixes division by 0 This is similar to how avg_frame_rate is checked elsewhere Fixes: 6d24add0455f41b1b45b7ba615cd46f3/asan_generic_dc34c3_5480_0a2ef411cae999b9871ed71a2e481b71.mov Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- libavformat/movenc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 473aac0065..5452ff790c 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -4291,7 +4291,9 @@ static int mov_write_uuidprof_tag(AVIOContext *pb, AVFormatContext *s) AVCodecParameters *video_par = s->streams[0]->codecpar; AVCodecParameters *audio_par = s->streams[1]->codecpar; int audio_rate = audio_par->sample_rate; - int64_t frame_rate = (video_st->avg_frame_rate.num * 0x10000LL) / video_st->avg_frame_rate.den; + int64_t frame_rate = video_st->avg_frame_rate.den ? + (video_st->avg_frame_rate.num * 0x10000LL) / video_st->avg_frame_rate.den : + 0; int audio_kbitrate = audio_par->bit_rate / 1000; int video_kbitrate = FFMIN(video_par->bit_rate / 1000, 800 - audio_kbitrate);