diff --git a/src/ui.c b/src/ui.c index 3e88758510..875be1b300 100644 --- a/src/ui.c +++ b/src/ui.c @@ -1686,24 +1686,24 @@ add_to_input_buf_csi(char_u *str, int len) push_raw_key(char_u *s, int len) { char_u *tmpbuf; + char_u *inp = s; + /* use the conversion result if possible */ tmpbuf = hangul_string_convert(s, &len); if (tmpbuf != NULL) - { - s = tmpbuf; + inp = tmpbuf; - for (; len--; s++) + for (; len--; inp++) + { + inbuf[inbufcount++] = *inp; + if (*inp == CSI) { - inbuf[inbufcount++] = *s; - if (*s == CSI) - { - /* Turn CSI into K_CSI. */ - inbuf[inbufcount++] = KS_EXTRA; - inbuf[inbufcount++] = (int)KE_CSI; - } + /* Turn CSI into K_CSI. */ + inbuf[inbufcount++] = KS_EXTRA; + inbuf[inbufcount++] = (int)KE_CSI; } - vim_free(tmpbuf); } + vim_free(tmpbuf); } #endif diff --git a/src/version.c b/src/version.c index 3623a099f8..17fd8883c2 100644 --- a/src/version.c +++ b/src/version.c @@ -743,6 +743,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1488, /**/ 1487, /**/