aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2017-02-25 01:43:16 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2017-05-14 12:20:15 +0200
commit891f35479653337f798c3a32b099456a4318738c (patch)
treef574316282f1a7c82e432e70b5d5218576972e3c /libavcodec
parent1e301c21d7478764ea46e0505e28675d1cf5e047 (diff)
downloadffmpeg-891f35479653337f798c3a32b099456a4318738c.tar.gz
avcodec/pngdec: Fix runtime error: left shift of 152 by 24 places cannot be represented in type 'int'
Fixes: 666/clusterfuzz-testcase-6581447227867136 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 310d2af319d9113263f75e94f5a1b211c05260b5) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/pngdec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
index 98727c7796..c72f34f961 100644
--- a/libavcodec/pngdec.c
+++ b/libavcodec/pngdec.c
@@ -796,7 +796,7 @@ static int decode_trns_chunk(AVCodecContext *avctx, PNGDecContext *s,
return AVERROR_INVALIDDATA;
for (i = 0; i < length; i++) {
- v = bytestream2_get_byte(&s->gb);
+ unsigned v = bytestream2_get_byte(&s->gb);
s->palette[i] = (s->palette[i] & 0x00ffffff) | (v << 24);
}
} else if (s->color_type == PNG_COLOR_TYPE_GRAY || s->color_type == PNG_COLOR_TYPE_RGB) {