diff --git a/libretro-common/formats/png/rpng_decode_common.h b/libretro-common/formats/png/rpng_decode_common.h index b418b5a350..85008abc8f 100644 --- a/libretro-common/formats/png/rpng_decode_common.h +++ b/libretro-common/formats/png/rpng_decode_common.h @@ -425,27 +425,6 @@ static bool png_reverse_filter(uint32_t *data, const struct png_ihdr *ihdr, return false; } -static void png_reverse_filter_adam7_process(uint32_t *data, - const struct png_ihdr *ihdr, - const uint8_t *inflate_buf, struct rpng_process_t *pngp) -{ - if (!pngp) - return; - - inflate_buf += pngp->pass.size; - pngp->stream.total_out -= pngp->pass.size; - - deinterlace_pass(data, - ihdr, pngp->data, pngp->pass.width, pngp->pass.height, &passes[pngp->pass.pos]); - - free(pngp->data); - - pngp->pass.width = 0; - pngp->pass.height = 0; - pngp->pass.size = 0; - pngp->adam7_pass_initialized = false; -} - static int png_reverse_filter_adam7(uint32_t *data, const struct png_ihdr *ihdr, const uint8_t *inflate_buf, struct rpng_process_t *pngp, @@ -468,7 +447,18 @@ static int png_reverse_filter_adam7(uint32_t *data, return -1; } - png_reverse_filter_adam7_process(data, ihdr, inflate_buf, pngp); + inflate_buf += pngp->pass.size; + pngp->stream.total_out -= pngp->pass.size; + + deinterlace_pass(data, + ihdr, pngp->data, pngp->pass.width, pngp->pass.height, &passes[pngp->pass.pos]); + + free(pngp->data); + + pngp->pass.width = 0; + pngp->pass.height = 0; + pngp->pass.size = 0; + pngp->adam7_pass_initialized = false; } return 0;