diff --git a/src/edit.c b/src/edit.c index 70b8fee129..edd2374e8f 100644 --- a/src/edit.c +++ b/src/edit.c @@ -1612,6 +1612,10 @@ decodeModifyOtherKeys(int c) // Match, consume the code. typebuf.tb_off += idx + 1; typebuf.tb_len -= idx + 1; +#if defined(FEAT_CLIENTSERVER) || defined(FEAT_EVAL) + if (typebuf.tb_len == 0) + typebuf_was_filled = FALSE; +#endif mod_mask = decode_modifiers(arg[!form]); c = merge_modifyOtherKeys(arg[form]); diff --git a/src/getchar.c b/src/getchar.c index 7df4bcebc9..6b1068dda8 100644 --- a/src/getchar.c +++ b/src/getchar.c @@ -421,6 +421,10 @@ flush_buffers(flush_buffers_T flush_typeahead) // remove mapped characters at the start only typebuf.tb_off += typebuf.tb_maplen; typebuf.tb_len -= typebuf.tb_maplen; +#if defined(FEAT_CLIENTSERVER) || defined(FEAT_EVAL) + if (typebuf.tb_len == 0) + typebuf_was_filled = FALSE; +#endif } else { @@ -1283,6 +1287,9 @@ alloc_typebuf(void) typebuf.tb_no_abbr_cnt = 0; if (++typebuf.tb_change_cnt == 0) typebuf.tb_change_cnt = 1; +#if defined(FEAT_CLIENTSERVER) || defined(FEAT_EVAL) + typebuf_was_filled = FALSE; +#endif return OK; } diff --git a/src/version.c b/src/version.c index 0efa4f7385..34eb68fb25 100644 --- a/src/version.c +++ b/src/version.c @@ -738,6 +738,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 370, /**/ 369, /**/