1
0
Fork 0

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

(cherry picked from commit c0513268bd)
This commit is contained in:
DESKTOP-893BK8A\howar 2022-04-14 16:05:35 +07:00 committed by Rémi Verschelde
parent 355c73de32
commit db5bfa398a
1 changed files with 7 additions and 1 deletions

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 {