screen: avoid looking up the width of whitespace and control codes
Spaces and tabs and control codes never are multi-column glyphs, so only look up the width for "normal", visible characters.master
parent
d6f43bd156
commit
91fff2a2c8
|
@ -1787,9 +1787,6 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool
|
||||||
}
|
}
|
||||||
|
|
||||||
while (*buf != '\0') {
|
while (*buf != '\0') {
|
||||||
if (mbwidth(buf) > 1)
|
|
||||||
seen_wide = TRUE;
|
|
||||||
|
|
||||||
if (*buf == ' ') {
|
if (*buf == ' ') {
|
||||||
/* Show a space as a visible character, or as a space. */
|
/* Show a space as a visible character, or as a space. */
|
||||||
#ifndef NANO_TINY
|
#ifndef NANO_TINY
|
||||||
|
@ -1837,6 +1834,9 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool
|
||||||
start_col += mbwidth(character);
|
start_col += mbwidth(character);
|
||||||
|
|
||||||
free(character);
|
free(character);
|
||||||
|
|
||||||
|
if (mbwidth(buf) > 1)
|
||||||
|
seen_wide = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
buf += parse_mbchar(buf, NULL, NULL);
|
buf += parse_mbchar(buf, NULL, NULL);
|
||||||
|
|
Loading…
Reference in New Issue