Module: libav
Branch: release/0.8
Commit: 7fdb915fc712f43879a396015b6fc56e40e89b35

Author:    Martin Storsjö <[email protected]>
Committer: Luca Barbato <[email protected]>
Date:      Sat Sep 28 23:32:39 2013 +0300

riffdec: Add sanity checks for the sample rate

This avoids a division by zero for G726.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: [email protected]
Signed-off-by: Martin Storsjö <[email protected]>
(cherry picked from commit d07aa3f02b73ab1371c13ac7898338380ca0932b)
Signed-off-by: Luca Barbato <[email protected]>
(cherry picked from commit 607863acaec85671f8c2afd81079ae4c605e3468)

---

 libavformat/riff.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavformat/riff.c b/libavformat/riff.c
index 4caac80..2594bd2 100644
--- a/libavformat/riff.c
+++ b/libavformat/riff.c
@@ -563,6 +563,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;
+    }
     codec->codec_id = ff_wav_codec_get_id(id, codec->bits_per_coded_sample);
     if (codec->codec_id == CODEC_ID_AAC_LATM) {
         /* channels and sample_rate values are those prior to applying SBR 
and/or PS */

_______________________________________________
libav-commits mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-commits

Reply via email to