=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/utf8.c,v retrieving revision 1.30 retrieving revision 1.31 diff -c -r1.30 -r1.31 *** src/usr.bin/tmux/utf8.c 2016/04/26 07:33:36 1.30 --- src/usr.bin/tmux/utf8.c 2016/04/27 09:36:25 1.31 *************** *** 1,4 **** ! /* $OpenBSD: utf8.c,v 1.30 2016/04/26 07:33:36 nicm Exp $ */ /* * Copyright (c) 2008 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: utf8.c,v 1.31 2016/04/27 09:36:25 nicm Exp $ */ /* * Copyright (c) 2008 Nicholas Marriott *************** *** 119,124 **** --- 119,132 ---- width = wcwidth(wc); if (width < 0 || width > 0xff) { log_debug("Unicode %04x, wcwidth() %d", wc, width); + + /* + * Many platforms have no width for relatively common + * characters (wcwidth() returns -1); assume width 1 in this + * case and hope for the best. + */ + if (width < 0) + return (1); return (-1); } return (width);