From 5b83b24ccbec79359f2dcdc0f49e09010a05e58a Mon Sep 17 00:00:00 2001 From: Andreas Cadhalpun Date: Wed, 16 Dec 2015 20:52:39 +0100 Subject: nuv: sanitize negative fps rate Signed-off-by: Andreas Cadhalpun Signed-off-by: Anton Khirnov --- libavformat/nuv.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'libavformat/nuv.c') diff --git a/libavformat/nuv.c b/libavformat/nuv.c index aeb2fae466..f553dd1e25 100644 --- a/libavformat/nuv.c +++ b/libavformat/nuv.c @@ -175,6 +175,15 @@ static int nuv_header(AVFormatContext *s) if (aspect > 0.9999 && aspect < 1.0001) aspect = 4.0 / 3.0; fps = av_int2double(avio_rl64(pb)); + if (fps < 0.0f) { + if (s->error_recognition & AV_EF_EXPLODE) { + av_log(s, AV_LOG_ERROR, "Invalid frame rate %f\n", fps); + return AVERROR_INVALIDDATA; + } else { + av_log(s, AV_LOG_WARNING, "Invalid frame rate %f, setting to 0.\n", fps); + fps = 0.0f; + } + } // number of packets per stream type, -1 means unknown, e.g. streaming v_packs = avio_rl32(pb); -- cgit v1.2.3