]> git.deb.at Git - pkg/abook.git/blobdiff - list.c
multibyte update
[pkg/abook.git] / list.c
diff --git a/list.c b/list.c
index 7197723d03fcad6f03f8b5165146e8add20f65e8..d3a53c36f423c50b49e757145e8014a7727cbf8b 100644 (file)
--- a/list.c
+++ b/list.c
@@ -128,21 +128,23 @@ print_list_line(int i, int line, int highlight)
        if(selected[i])
                mvwaddch(list, line, 0, '*' );
        
-       mvwaddnstr(list, line, NAMEPOS, database[i][NAME], NAMELEN);
+       mvwaddnstr(list, line, NAMEPOS, database[i][NAME],
+               bytes2width(database[i][NAME], NAMELEN));
        if(opt_get_bool(BOOL_SHOW_ALL_EMAILS))
                mvwaddnstr(list, line, EMAILPOS, database[i][EMAIL],
-                               real_emaillen);
+                               bytes2width(database[i][EMAIL], real_emaillen));
        else {
                get_first_email(tmp, i);
-               mvwaddnstr(list, line, EMAILPOS, tmp, real_emaillen);
+               mvwaddnstr(list, line, EMAILPOS, tmp,
+                       bytes2width(tmp, real_emaillen));
        }
 
        if(extra < 0 || !database[i][extra])
                extra = extra_alternative;
        if(extra >= 0)
                mvwaddnstr(list, line, EXTRAPOS,
-                               safe_str(database[i][extra]),
-                               EXTRALEN);
+                       safe_str(database[i][extra]),
+                       bytes2width(safe_str(database[i][extra]), EXTRALEN));
 
        scrollok(list, TRUE);
        if(highlight)
@@ -216,7 +218,6 @@ page_down()
        refresh_list();
 }
 
-
 void
 select_none()
 {