From fa048dbee34ba6dfd8503364d9b38127802fd0a5 Mon Sep 17 00:00:00 2001 From: CrazyBloo Date: Wed, 28 Jan 2026 13:50:12 -0500 Subject: [PATCH] set outputInfo->processed_height during png write i assume some games will use this for error handling --- src/core/libraries/libpng/pngenc.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/core/libraries/libpng/pngenc.cpp b/src/core/libraries/libpng/pngenc.cpp index 4105e4a92..a17adbf71 100644 --- a/src/core/libraries/libpng/pngenc.cpp +++ b/src/core/libraries/libpng/pngenc.cpp @@ -182,6 +182,10 @@ s32 PS4_SYSV_ABI scePngEncEncode(OrbisPngEncHandle handle, const OrbisPngEncEnco png_bytep row = (png_bytep)param->image_mem_addr + processed_height * row_stride; png_write_row(pngh->png_ptr, row); + if (outputInfo != nullptr) { + outputInfo->processed_height = processed_height; + } + if (writer.cancel_write) { LOG_ERROR(Lib_Png, "Ran out of room to write PNG"); return ORBIS_PNG_ENC_ERROR_DATA_OVERFLOW; @@ -209,6 +213,10 @@ s32 PS4_SYSV_ABI scePngEncEncode(OrbisPngEncHandle handle, const OrbisPngEncEnco png_write_row(pngh->png_ptr, rgb_row.data()); + if (outputInfo != nullptr) { + outputInfo->processed_height = processed_height; + } + if (writer.cancel_write) { LOG_ERROR(Lib_Png, "Ran out of room to write PNG"); return ORBIS_PNG_ENC_ERROR_DATA_OVERFLOW;