summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-03-23 04:32:16 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-03-23 04:32:16 +0100
commitac2cb279162218e92a5663caac27d695e6514b69 (patch)
treef3bcea749f24d8cd39fb9f8ada2f5cb11cca013d /libavformat
parentc0a99eae296177b22387fab8921d079088d8a54b (diff)
mov: Fix FPE on 0 time_scale
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/mov.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 66c1886112..785d284b86 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -805,7 +805,8 @@ static int mov_read_mvhd(MOVContext *c, AVIOContext *pb, MOVAtom atom)
c->duration = (version == 1) ? avio_rb64(pb) : avio_rb32(pb); /* duration */
// set the AVCodecContext duration because the duration of individual tracks
// may be inaccurate
- c->fc->duration = av_rescale(c->duration, AV_TIME_BASE, c->time_scale);
+ if (c->time_scale > 0)
+ c->fc->duration = av_rescale(c->duration, AV_TIME_BASE, c->time_scale);
avio_rb32(pb); /* preferred scale */
avio_rb16(pb); /* preferred volume */