From: Christoph Lohmann <20h@r-36.net> Date: Sun, 30 Aug 2015 09:29:23 +0000 (+0200) Subject: Merge branch 'master' of ssh://suckless.org/gitrepos/st X-Git-Url: https://git.danieliu.xyz/?a=commitdiff_plain;h=0c94f8621b738c51c9e08abc3c52fe8dfe24b953;hp=-c;p=st.git Merge branch 'master' of ssh://suckless.org/gitrepos/st --- 0c94f8621b738c51c9e08abc3c52fe8dfe24b953 diff --combined st.c index e76aaf3,35a840b..aaf868d --- a/st.c +++ b/st.c @@@ -1531,8 -1531,7 +1531,8 @@@ ttywrite(const char *s, size_t n * This means the buffer is getting full * again. Empty it. */ - ttyread(); + if (n < 256) + ttyread(); n -= r; s += r; } else { @@@ -2896,15 -2895,15 +2896,15 @@@ tputc(Rune u int width, len; Glyph *gp; + control = ISCONTROL(u); len = utf8encode(u, c); - if ((width = wcwidth(u)) == -1) { + if (!control && (width = wcwidth(u)) == -1) { memcpy(c, "\357\277\275", 4); /* UTF_INVALID */ width = 1; } if (IS_SET(MODE_PRINT)) tprinter(c, len); - control = ISCONTROL(u); /* * STR sequence must be checked before anything else