png_reverse_filter_copy_line - optimization - paeth would always return

'b' input value (and input is unsigned, so abs would have no effect), so
get rid of the paeth function call for the first loop iteration
This commit is contained in:
LibretroAdmin 2022-08-02 13:22:13 +02:00
parent 78f4e0abda
commit e6f3a387b2

View File

@ -589,7 +589,7 @@ static int png_reverse_filter_copy_line(uint32_t *data, const struct png_ihdr *i
break;
case PNG_FILTER_PAETH:
for (i = 0; i < pngp->bpp; i++)
pngp->decoded_scanline[i] = paeth(0, pngp->prev_scanline[i], 0) + pngp->inflate_buf[i];
pngp->decoded_scanline[i] = pngp->prev_scanline[i] + pngp->inflate_buf[i];
for (i = pngp->bpp; i < pngp->pitch; i++)
pngp->decoded_scanline[i] = paeth(pngp->decoded_scanline[i - pngp->bpp],
pngp->prev_scanline[i], pngp->prev_scanline[i - pngp->bpp]) + pngp->inflate_buf[i];