summaryrefslogtreecommitdiffstats
path: root/tty.c
diff options
context:
space:
mode:
Diffstat (limited to 'tty.c')
-rw-r--r--tty.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/tty.c b/tty.c
index 8855a657..a3aeda5d 100644
--- a/tty.c
+++ b/tty.c
@@ -365,16 +365,12 @@ tty_putc(struct tty *tty, u_char ch)
void
tty_pututf8(struct tty *tty, const struct grid_utf8 *gu)
{
- u_int i;
-
- for (i = 0; i < UTF8_SIZE; i++) {
- if (gu->data[i] == 0xff)
- break;
- bufferevent_write(tty->event, &gu->data[i], 1);
- if (tty->log_fd != -1)
- write(tty->log_fd, &gu->data[i], 1);
- }
+ size_t size;
+ size = grid_utf8_size(gu);
+ bufferevent_write(tty->event, gu->data, size);
+ if (tty->log_fd != -1)
+ write(tty->log_fd, gu->data, size);
tty->cx += gu->width;
}