From 3cc715f116b3e72ed464a36508f2b5032a1a97e9 Mon Sep 17 00:00:00 2001 From: Jeffrey Pfau Date: Sun, 29 May 2016 09:57:10 -0700 Subject: [PATCH] Util: Fix realloc semantics in utf16to8 --- CHANGES | 1 + src/util/string.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 81edbe65c..f0ffaea3a 100644 --- a/CHANGES +++ b/CHANGES @@ -20,6 +20,7 @@ Bugfixes: - All: Fix instruction tables getting zeroed when linking sometimes - SDL: Fix SDL 1.2 build - ARM7: Fix flags on SBC/RSC + - Util: Fix realloc semantics in utf16to8 Misc: - GBA: Slightly optimize GBAProcessEvents - Qt: Add preset for DualShock 4 diff --git a/src/util/string.c b/src/util/string.c index 6649a38ac..c35b37a2d 100644 --- a/src/util/string.c +++ b/src/util/string.c @@ -202,8 +202,9 @@ char* utf16to8(const uint16_t* utf16, size_t length) { } char* newUTF8 = realloc(utf8, utf8Length + 1); - if (newUTF8 != utf8) { + if (!newUTF8) { free(utf8); + return 0; } newUTF8[utf8Length] = '\0'; return newUTF8;