Fixes: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' Fixes: 2377/clusterfuzz-testcase-minimized-6108505935183872
Unified · Split
| @@ -846,9 +846,9 @@ static int wavpack_decode_block(AVCodecContext *avctx, int block_no, · 845 unmodified lines | |||
| 846 | continue; | 846 | continue; |
| 847 | } | 847 | } |
| 848 | bytestream2_get_buffer(&gb, val, 4); | 848 | bytestream2_get_buffer(&gb, val, 4); |
| 849 | if (val[0] > 31) { | 849 | if (val[0] > 30) { |
| 850 | av_log(avctx, AV_LOG_ERROR, | 850 | av_log(avctx, AV_LOG_ERROR, |
| 851 | "Invalid INT32INFO, extra_bits = %d (> 32)\n", val[0]); | 851 | "Invalid INT32INFO, extra_bits = %d (> 30)\n", val[0]); |
| 852 | continue; | 852 | continue; |
| 853 | } else if (val[0]) { | 853 | } else if (val[0]) { |
| 854 | s->extra_bits = val[0]; | 854 | s->extra_bits = val[0]; |