[libav-stable] vp3: Check the framerate for validity

Martin Storsjö git at libav.org
Mon Sep 16 10:26:28 CEST 2013


Module: libav
Branch: master
Commit: 6fc8226e29055858f28973bb3d27b63b3b65e616

Author:    Martin Storsjö <martin at martin.st>
Committer: Martin Storsjö <martin at martin.st>
Date:      Thu Sep 12 12:27:58 2013 +0300

vp3: Check the framerate for validity

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org
Signed-off-by: Martin Storsjö <martin at martin.st>

---

 libavcodec/vp3.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
index 0211537..a269dc3 100644
--- a/libavcodec/vp3.c
+++ b/libavcodec/vp3.c
@@ -2199,6 +2199,10 @@ static int theora_decode_header(AVCodecContext *avctx, GetBitContext *gb)
     fps.num = get_bits_long(gb, 32);
     fps.den = get_bits_long(gb, 32);
     if (fps.num && fps.den) {
+        if (fps.num < 0 || fps.den < 0) {
+            av_log(avctx, AV_LOG_ERROR, "Invalid framerate\n");
+            return AVERROR_INVALIDDATA;
+        }
         av_reduce(&avctx->time_base.num, &avctx->time_base.den,
                   fps.den, fps.num, 1<<30);
     }



More information about the libav-stable mailing list