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);
--
1.9.0

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

Reply via email to