From 3c58300269768e2dcd5cd8b55d56ecab99cb32f1 Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Wed, 18 Apr 2012 13:48:20 +0100 Subject: [PATCH] matroska: do not set invalid default duration if frame rate is zero If a video track specifies a zero frame rate (invalid but occurs), this results in a division by zero and subsequent undefined conversion to integer. Setting the default duration from the frame rate only if the latter is greater than zero avoids such problems. Signed-off-by: Mans Rullgard --- libavformat/matroskadec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 03d7c32886..99e0dac0ca 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -1342,7 +1342,7 @@ static int matroska_read_header(AVFormatContext *s) continue; if (track->type == MATROSKA_TRACK_TYPE_VIDEO) { - if (!track->default_duration) + if (!track->default_duration && track->video.frame_rate > 0) track->default_duration = 1000000000/track->video.frame_rate; if (!track->video.display_width) track->video.display_width = track->video.pixel_width;