From 8ae8fae4001873515c2465ca05b8ac77a35a72e5 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Thu, 8 Aug 2013 20:10:06 +0100 Subject: 31644: Fix insertion of multibyte characters into editor line. This was broken for a string that came from outside ZLE in the case where the editing buffer wasn't metafied, i.e. not in completion. --- Src/Zle/zle_tricky.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Src') diff --git a/Src/Zle/zle_tricky.c b/Src/Zle/zle_tricky.c index 610055c64..e30e0b1aa 100644 --- a/Src/Zle/zle_tricky.c +++ b/Src/Zle/zle_tricky.c @@ -2136,8 +2136,8 @@ inststrlen(char *str, int move, int len) return 0; if (len == -1) len = strlen(str); - spaceinline(len); if (zlemetaline != NULL) { + spaceinline(len); strncpy(zlemetaline + zlemetacs, str, len); if (move) zlemetacs += len; @@ -2148,6 +2148,7 @@ inststrlen(char *str, int move, int len) instr = ztrduppfx(str, len); zlestr = stringaszleline(instr, 0, &zlelen, NULL, NULL); + spaceinline(zlelen); ZS_strncpy(zleline + zlecs, zlestr, zlelen); free(zlestr); zsfree(instr); -- cgit 1.4.1