diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c index ec604546b1..e91bca4f97 100644 --- a/libavcodec/pngdec.c +++ b/libavcodec/pngdec.c @@ -228,7 +228,7 @@ static void png_filter_row(PNGDecContext *s, uint8_t *dst, int filter_type, p = last[i]; dst[i] = p + src[i]; } - if(bpp > 1 && size > 4) { + if(bpp > 2 && size > 4) { // would write off the end of the array if we let it process the last pixel with bpp=3 int w = bpp==4 ? size : size-3; s->add_paeth_prediction(dst+i, src+i, last+i, w-i, bpp);