Mercurial > vim
diff src/getchar.c @ 9205:c19eb05b19df v7.4.1886
commit https://github.com/vim/vim/commit/cda7764d8e65325d4524e5d6c3174121eeb12cad
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jun 4 13:32:35 2016 +0200
patch 7.4.1886
Problem: When waiting for a character is interrupted by receiving channel
data and the first character of a mapping was typed, the mapping
times out. (Ramel Eshed)
Solution: When dealing with channel data don't return from mch_inchar().
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 04 Jun 2016 13:45:05 +0200 |
parents | 7350959e53c3 |
children | ea504064c996 |
line wrap: on
line diff
--- a/src/getchar.c +++ b/src/getchar.c @@ -129,6 +129,7 @@ static int vgetorpeek(int); static void map_free(mapblock_T **); static void validate_maphash(void); static void showmap(mapblock_T *mp, int local); +static int inchar(char_u *buf, int maxlen, long wait_time, int tb_change_cnt); #ifdef FEAT_EVAL static char_u *eval_map_expr(char_u *str, int c); #endif @@ -2941,7 +2942,7 @@ vgetorpeek(int advance) * Return the number of obtained characters. * Return -1 when end of input script reached. */ - int + static int inchar( char_u *buf, int maxlen,