diff --git a/src/text.c b/src/text.c index b151403a2d7cdf4fa28e51bf60ba57e2d65af992..264c8657c742ef0fe0e3549db7caa6faf3fb754c 100644 --- a/src/text.c +++ b/src/text.c @@ -599,6 +599,7 @@ ssize_t break_line(const char *line, ssize_t goal, bool newline) if (blank_loc == -1) { /* No blank was found that was short enough. */ bool found_blank = FALSE; + ssize_t found_blank_loc; while (*line != '\0') { line_len = parse_mbchar(line, NULL, NULL); @@ -606,8 +607,9 @@ ssize_t break_line(const char *line, ssize_t goal, bool newline) if (is_blank_mbchar(line) || (newline && *line == '\n')) { if (!found_blank) found_blank = TRUE; + found_blank_loc = cur_loc; } else if (found_blank) - return move_mbleft(line, cur_loc); + return found_blank_loc; line += line_len; cur_loc += line_len;