From a9469c8ffb2266850cdf4c6566eab895ba8b7b82 Mon Sep 17 00:00:00 2001 From: James R Date: Fri, 10 Feb 2023 18:37:49 -0800 Subject: [PATCH] Check return value of png_get_tRNS before using trans png_get_tRNS may not set pointers if it fails. --- src/r_picformats.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/r_picformats.c b/src/r_picformats.c index f8e3d3ca5..054affcf6 100644 --- a/src/r_picformats.c +++ b/src/r_picformats.c @@ -999,9 +999,7 @@ static png_bytep *PNG_Read( // color is present on the image, the palette flag is disabled. if (usepal) { - png_get_tRNS(png_ptr, png_info_ptr, &trans, &trans_num, &trans_values); - - if (trans && trans_num > 0) + if (png_get_tRNS(png_ptr, png_info_ptr, &trans, &trans_num, &trans_values) == PNG_INFO_tRNS) { INT32 i; for (i = 0; i < trans_num; i++)