From 09f75b5b38c19ce98447f5a86e3c7985d8d7e7ce Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Fri, 6 May 2005 21:11:38 +0000
Subject: [PATCH] division by zero fix

Originally committed as revision 4191 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavformat/utils.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/utils.c b/libavformat/utils.c
index 21fd82528ca..bf3330d066b 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -1841,12 +1841,12 @@ int av_find_stream_info(AVFormatContext *ic)
             if(st->codec.codec_id == CODEC_ID_RAWVIDEO && !st->codec.codec_tag && !st->codec.bits_per_sample)
                 st->codec.codec_tag= avcodec_pix_fmt_to_codec_tag(st->codec.pix_fmt);
 
-            if(best_duration[i] < INT64_MAX && st->codec.time_base.num*1000 <= st->codec.time_base.den){
+            if(best_duration[i] < INT64_MAX && st->codec.time_base.num*1000 <= st->codec.time_base.den &&
+               st->time_base.num*best_duration[i]*1000LL > st->time_base.den){
                 int int_fps;
 
                 st->r_frame_rate.num= st->time_base.den;
                 st->r_frame_rate.den= st->time_base.num*best_duration[i];
-                av_reduce(&st->r_frame_rate.num, &st->r_frame_rate.den, st->r_frame_rate.num, st->r_frame_rate.den, 1<<15);
                 
                 int_fps= av_rescale(st->r_frame_rate.num, 1, st->r_frame_rate.den); // 1/0
                 
-- 
GitLab