From a8f003d81a98aa3c004895757004df61250bedc8 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Sun, 28 Jun 2020 00:40:24 -0700 Subject: [PATCH] Util: Fix crash if PNG header fails to write --- CHANGES | 1 + src/util/png-io.c | 9 +++------ 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/CHANGES b/CHANGES index fd2882378..d976d8028 100644 --- a/CHANGES +++ b/CHANGES @@ -13,6 +13,7 @@ Other fixes: - GBA Savedata: Fix extracting save when not yet configured in-game - Qt: Fix file handle leak on opening an invalid ROM - Qt: Fix Italian RTC translation (fixes mgba.io/i/1798) + - Util: Fix crash if PNG header fails to write Misc: - Qt: Add per-page scrolling to memory view (fixes mgba.io/i/1795) - Qt: Add setting to display ROM filename in title (closes mgba.io/i/1784) diff --git a/src/util/png-io.c b/src/util/png-io.c index e6c0487ca..c0e6a832a 100644 --- a/src/util/png-io.c +++ b/src/util/png-io.c @@ -47,19 +47,16 @@ static png_infop _pngWriteHeader(png_structp png, unsigned width, unsigned heigh return 0; } png_set_IHDR(png, info, width, height, 8, type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE); + png_write_info(png, info); return info; } png_infop PNGWriteHeader(png_structp png, unsigned width, unsigned height) { - png_infop info = _pngWriteHeader(png, width, height, PNG_COLOR_TYPE_RGB); - png_write_info(png, info); - return info; + return _pngWriteHeader(png, width, height, PNG_COLOR_TYPE_RGB); } png_infop PNGWriteHeaderA(png_structp png, unsigned width, unsigned height) { - png_infop info = _pngWriteHeader(png, width, height, PNG_COLOR_TYPE_RGB_ALPHA); - png_write_info(png, info); - return info; + return _pngWriteHeader(png, width, height, PNG_COLOR_TYPE_RGB_ALPHA); } png_infop PNGWriteHeader8(png_structp png, unsigned width, unsigned height) {