avcodec/wavpack: Fix runtime error: shift exponent 32 is too large for 32-bit type...
authorMichael Niedermayer <michael@niedermayer.cc>
Mon, 13 Mar 2017 01:51:15 +0000 (02:51 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Tue, 14 Mar 2017 01:23:50 +0000 (02:23 +0100)
Fixes: 822/clusterfuzz-testcase-4873433189974016

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/wavpack.c

index 943e46a..bc94b27 100644 (file)
@@ -846,7 +846,7 @@ static int wavpack_decode_block(AVCodecContext *avctx, int block_no,
                 continue;
             }
             bytestream2_get_buffer(&gb, val, 4);
-            if (val[0] > 32) {
+            if (val[0] > 31) {
                 av_log(avctx, AV_LOG_ERROR,
                        "Invalid INT32INFO, extra_bits = %d (> 32)\n", val[0]);
                 continue;