From d07aa3f02b73ab1371c13ac7898338380ca0932b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Sat, 28 Sep 2013 23:32:39 +0300 Subject: [PATCH] riffdec: Add sanity checks for the sample rate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This avoids a division by zero for G726. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö --- libavformat/riffdec.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavformat/riffdec.c b/libavformat/riffdec.c index 447a6864b7..74f93acedf 100644 --- a/libavformat/riffdec.c +++ b/libavformat/riffdec.c @@ -120,6 +120,11 @@ int ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size) if (size > 0) avio_skip(pb, size); } + if (codec->sample_rate <= 0) { + av_log(NULL, AV_LOG_ERROR, + "Invalid sample rate: %d\n", codec->sample_rate); + return AVERROR_INVALIDDATA; + } if (codec->codec_id == AV_CODEC_ID_AAC_LATM) { /* Channels and sample_rate values are those prior to applying SBR * and/or PS. */