From 7c986a3a099bfbfdcd7232ee3b02e38423ed285d Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Mon, 13 Jul 2026 14:48:25 +0200 Subject: [PATCH] Fix crash when encoding CJK characters from UTF-16 into UTF-8 #4180 --- Source/Engine/Utilities/StringConverter.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Source/Engine/Utilities/StringConverter.h b/Source/Engine/Utilities/StringConverter.h index 9e6fa9569..331b5863b 100644 --- a/Source/Engine/Utilities/StringConverter.h +++ b/Source/Engine/Utilities/StringConverter.h @@ -86,7 +86,8 @@ public: StringAsUTF8(const Char* text, int32 length) { int32 lengthUtf8; - if (length + 1 < InlinedSize) + // UTF-8 can use up to 3 bytes per UTF-16 code unit + if (length * 3 + 1 < InlinedSize) { StringUtils::ConvertUTF162UTF8(text, this->_inlined, length, lengthUtf8); this->_inlined[lengthUtf8] = 0;