login

<     >

2015-06-13 13:21:01 (UTC-03:00)

Marcel Rodrigues <marcelgmr@gmail.com>

Fix horizontal scrolling using wide chars.

diff --git a/rover.c b/rover.c
index c4fadfa..243695b 100644
--- a/rover.c
+++ b/rover.c
@@ -767,6 +767,7 @@ static void
 update_input(char *prompt, Color color)
 {
     int plen, ilen, maxlen;
+    wchar_t wbuf[COLS];
 
     plen = strlen(prompt);
     ilen = mbstowcs(NULL, INPUT, 0);
@@ -780,7 +781,8 @@ update_input(char *prompt, Color color)
     color_set(RVC_PROMPT, NULL);
     mvaddstr(LINES - 1, 0, prompt);
     color_set(color, NULL);
-    mvaddnstr(LINES - 1, plen, &INPUT[rover.edit_scroll], maxlen);
+    mbstowcs(wbuf, INPUT, COLS);
+    mvaddnwstr(LINES - 1, plen, &wbuf[rover.edit_scroll], maxlen);
     mvaddch(LINES - 1, plen + MIN(ilen - rover.edit_scroll, maxlen + 1), ' ');
     color_set(DEFAULT, NULL);
     if (rover.edit_scroll)