summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--key-string.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/key-string.c b/key-string.c
index 119035a0..bbbe346c 100644
--- a/key-string.c
+++ b/key-string.c
@@ -226,6 +226,7 @@ key_string_lookup_key(key_code key)
char tmp[8];
u_int i;
struct utf8_data ud;
+ size_t off;
*out = '\0';
@@ -270,8 +271,9 @@ key_string_lookup_key(key_code key)
/* Is this a UTF-8 key? */
if (key > 127 && key < KEYC_BASE) {
if (utf8_split(key, &ud) == UTF8_DONE) {
- memcpy(out, ud.data, ud.size);
- out[ud.size] = '\0';
+ off = strlen(out);
+ memcpy(out + off, ud.data, ud.size);
+ out[off + ud.size] = '\0';
return (out);
}
}