Ported: Fixed #59985 leading spaces autowrap boundary problem

Bug problem:
No condition for when the first character of the label is a space character
Fix:
Added an IF condition for when the first character is a space character
The autowrap boundary treat this space character as another dummy word in the WordCache linked list and proceed to function normally, by detecting when line width is 0
- ZheisterCoding
c0513268bd
This commit is contained in:
Relintai 2022-07-26 12:56:16 +02:00
parent 2b6b95db1f
commit 58b8271bf4

View File

@ -452,7 +452,13 @@ void Label::regenerate_word_cache() {
}
if (i < xl_text.length() && xl_text[i] == ' ') {
if (line_width > 0 || last == nullptr || last->char_pos != WordCache::CHAR_WRAPLINE) {
if (line_width == 0) {
if (current_word_size == 0) {
word_pos = i;
}
current_word_size += space_width;
line_width += space_width;
} else if (line_width > 0 || last == nullptr || last->char_pos != WordCache::CHAR_WRAPLINE) {
space_count++;
line_width += space_width;
} else {