From: Michael Niedermayer Date: Sat, 25 Jul 2020 21:14:10 +0000 (+0200) Subject: avcodec/pgxdec: Fix invalid shift in write_frame_* X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=165d6b876b602ec0f6122867b281b8dd6a5f8a5f;p=ffmpeg avcodec/pgxdec: Fix invalid shift in write_frame_* Fixes: left shift of negative value -121 Fixes: 23911/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PGX_fuzzer-4986800258154496 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer --- diff --git a/libavcodec/pgxdec.c b/libavcodec/pgxdec.c index a72d6fe6fe5..150f8bbf66b 100644 --- a/libavcodec/pgxdec.c +++ b/libavcodec/pgxdec.c @@ -102,7 +102,7 @@ error: for (i = 0; i < height; i++) { \ PIXEL *line = (PIXEL*)frame->data[0] + i*frame->linesize[0]/sizeof(PIXEL); \ for (j = 0; j < width; j++) { \ - int val; \ + unsigned val; \ if (sign) \ val = (PIXEL)bytestream2_get_ ##suffix(g) + (1 << (depth - 1)); \ else \