Module: libav
Branch: master
Commit: 9b8c8a9395c849639aea0f6b5300e991e93c3a73

Author:    Luca Barbato <[email protected]>
Committer: Vittorio Giovara <[email protected]>
Date:      Mon Feb  2 02:22:34 2015 +0100

svq1dec: Validate the stages value strictly

It can be less than -1.

Bug-Id: CID 1194397 / CID 1194398
CC: [email protected]

---

 libavcodec/svq1dec.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/svq1dec.c b/libavcodec/svq1dec.c
index 789a013..909ace7 100644
--- a/libavcodec/svq1dec.c
+++ b/libavcodec/svq1dec.c
@@ -191,7 +191,7 @@ static int svq1_decode_block_intra(GetBitContext *bitbuf, 
uint8_t *pixels,
             continue;   /* skip vector */
         }
 
-        if (stages > 0 && level >= 4) {
+        if ((stages > 0 && level >= 4) || stages < 0) {
             av_dlog(NULL,
                     "Error (svq1_decode_block_intra): invalid vector: 
stages=%i level=%i\n",
                     stages, level);
@@ -253,7 +253,7 @@ static int svq1_decode_block_non_intra(GetBitContext 
*bitbuf, uint8_t *pixels,
         if (stages == -1)
             continue;           /* skip vector */
 
-        if ((stages > 0) && (level >= 4)) {
+        if ((stages > 0 && level >= 4) || stages < 0) {
             av_dlog(NULL,
                     "Error (svq1_decode_block_non_intra): invalid vector: 
stages=%i level=%i\n",
                     stages, level);

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

Reply via email to