diff --git a/src/winio.c b/src/winio.c index a7007e598cd238b6042ae554759e3798630018f3..7d86081ef5b1b9a8906f1d68d2f3eb36edaa617c 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2470,7 +2470,13 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool start_index += wide_buf_len; } + if (index < alloc_len) + converted[index] = '\0'; + + /* Make sure converted takes up no more than len columns. */ + index = actual_x(converted, len); null_at(&converted, index); + return converted; }