From: David Lawrence Ramsey Date: Mon, 5 Sep 2005 01:36:47 +0000 (+0000) Subject: in display_string(), if column is less than start_col and the X-Git-Tag: v1.3.9~32 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=7f26c7384dbe1b67600b85ea156db08a53855786;p=nano.git in display_string(), if column is less than start_col and the character's a tab, which can be possible if there are enough tabs and the terminal size is sufficiently large, don't try to display it using control_mbrep() git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3014 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/ChangeLog b/ChangeLog index 9a79c358..5e68a275 100644 --- a/ChangeLog +++ b/ChangeLog @@ -318,6 +318,10 @@ CVS code - display_string() - Instead of using parse_mbchar()'s bad_chr parameter, use mbrep() to get the representation of a bad character. (DLR) + - If column is less than start_col and the character's a tab, + which can be possible if there are enough tabs and the + terminal size is sufficiently large, don't try to display it + using control_mbrep(). (DLR, found by Duncan G. Doyle) edit_redraw(), edit_refresh() - Clean up and simplify. (DLR) edit_update() diff --git a/src/winio.c b/src/winio.c index 05b69f38..1bd633e9 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2335,8 +2335,8 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool converted = charalloc(alloc_len + 1); index = 0; - if (column < start_col || (dollars && column > 0 && - buf[start_index] != '\t')) { + if (buf[start_index] != '\t' && (column < start_col || (dollars && + column > 0))) { /* We don't display all of buf[start_index] since it starts to * the left of the screen. */ buf_mb_len = parse_mbchar(buf + start_index, buf_mb, NULL);