aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/mov.c
diff options
context:
space:
mode:
authorJanne Grunau <janne-libav@jannau.net>2012-11-23 16:33:36 +0100
committerJanne Grunau <janne-libav@jannau.net>2012-12-07 11:43:28 +0100
commit80b6b31417c6791f9d4f1bc8c3c2a726d71e45e0 (patch)
tree1afe9e62d90ab1ae39aaac17315a234731d6cab5 /libavformat/mov.c
parent480be07a9637b56060737106c53ac888bc107e69 (diff)
downloadffmpeg-80b6b31417c6791f9d4f1bc8c3c2a726d71e45e0.tar.gz
mov: compute avg_frame_rate only if duration is known
Fixes an assert in fuzzed sample sample.mp4_s265930.
Diffstat (limited to 'libavformat/mov.c')
-rw-r--r--libavformat/mov.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index c6ff84bbcd..a0ede86882 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -2052,8 +2052,9 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom)
((double)st->codec->width * sc->height), INT_MAX);
}
- av_reduce(&st->avg_frame_rate.num, &st->avg_frame_rate.den,
- sc->time_scale*st->nb_frames, st->duration, INT_MAX);
+ if (st->duration != AV_NOPTS_VALUE)
+ av_reduce(&st->avg_frame_rate.num, &st->avg_frame_rate.den,
+ sc->time_scale*st->nb_frames, st->duration, INT_MAX);
#if FF_API_R_FRAME_RATE
if (sc->stts_count == 1 || (sc->stts_count == 2 && sc->stts_data[1].count == 1))