From e1dc7df3a5fb374bb2eef7828df29209524958e6 Mon Sep 17 00:00:00 2001 From: Gleb Mazovetskiy Date: Sun, 7 Nov 2021 21:49:56 +0000 Subject: [PATCH] Fix crash in `WordWrapString` Fixes #3433 --- Source/engine/render/text_render.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Source/engine/render/text_render.cpp b/Source/engine/render/text_render.cpp index 3b9c2702e..77d610b4d 100644 --- a/Source/engine/render/text_render.cpp +++ b/Source/engine/render/text_render.cpp @@ -315,7 +315,9 @@ std::string WordWrapString(string_view text, size_t width, GameFontTables size, } output.append(processedEnd, end); output += '\n'; - remaining.remove_prefix(lastBreakablePos + lastBreakableLen - (remaining.data() - begin)); + + // Restart from the beginning of the new line. + remaining = text.substr(lastBreakablePos + lastBreakableLen); processedEnd = remaining.data(); lastBreakablePos = -1; lineWidth = 0;