=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/input-keys.c,v retrieving revision 1.46 retrieving revision 1.47 diff -c -r1.46 -r1.47 *** src/usr.bin/tmux/input-keys.c 2015/11/12 11:05:34 1.46 --- src/usr.bin/tmux/input-keys.c 2015/11/12 22:04:37 1.47 *************** *** 1,4 **** ! /* $OpenBSD: input-keys.c,v 1.46 2015/11/12 11:05:34 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: input-keys.c,v 1.47 2015/11/12 22:04:37 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott *************** *** 144,150 **** size_t dlen; char *out; key_code justkey; ! struct utf8_data utf8data; log_debug("writing key 0x%llx (%s) to %%%u", key, key_string_lookup_key(key), wp->id); --- 144,150 ---- size_t dlen; char *out; key_code justkey; ! struct utf8_data ud; log_debug("writing key 0x%llx (%s) to %%%u", key, key_string_lookup_key(key), wp->id); *************** *** 164,179 **** if (key != KEYC_NONE && justkey < 0x7f) { if (key & KEYC_ESCAPE) bufferevent_write(wp->event, "\033", 1); ! utf8data.data[0] = justkey; ! bufferevent_write(wp->event, &utf8data.data[0], 1); return; } if (key != KEYC_NONE && justkey > 0x7f && justkey < KEYC_BASE) { ! if (utf8_split(justkey, &utf8data) != 0) return; if (key & KEYC_ESCAPE) bufferevent_write(wp->event, "\033", 1); ! bufferevent_write(wp->event, utf8data.data, utf8data.size); return; } --- 164,179 ---- if (key != KEYC_NONE && justkey < 0x7f) { if (key & KEYC_ESCAPE) bufferevent_write(wp->event, "\033", 1); ! ud.data[0] = justkey; ! bufferevent_write(wp->event, &ud.data[0], 1); return; } if (key != KEYC_NONE && justkey > 0x7f && justkey < KEYC_BASE) { ! if (utf8_split(justkey, &ud) != 0) return; if (key & KEYC_ESCAPE) bufferevent_write(wp->event, "\033", 1); ! bufferevent_write(wp->event, ud.data, ud.size); return; }