diff options
author | vimboss <devnull@localhost> | 2006-09-05 18:57:57 +0000 |
---|---|---|
committer | vimboss <devnull@localhost> | 2006-09-05 18:57:57 +0000 |
commit | 00af1226be394f3812c813be8d6bc49b32afe039 (patch) | |
tree | 36a19245ad08b2aeba5b5ff2b655215b828651e7 | |
parent | 039f28bafc0f0372f3348908ca8e3b570b21c9cc (diff) | |
download | vim-00af1226be394f3812c813be8d6bc49b32afe039.tar.gz |
-rw-r--r-- | src/misc1.c | 10 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/misc1.c b/src/misc1.c index 78caa208..b74ce0de 100644 --- a/src/misc1.c +++ b/src/misc1.c @@ -3016,6 +3016,7 @@ get_keystroke() int len = 0; int n; int save_mapped_ctrl_c = mapped_ctrl_c; + int waited = 0; mapped_ctrl_c = FALSE; /* mappings are not used here */ for (;;) @@ -3034,11 +3035,16 @@ get_keystroke() /* Replace zero and CSI by a special key code. */ n = fix_input_buffer(buf + len, n, FALSE); len += n; + waited = 0; } + else if (len > 0) + ++waited; /* keep track of the waiting time */ - /* incomplete termcode: get more characters */ - if ((n = check_termcode(1, buf, len)) < 0) + /* Incomplete termcode and not timed out yet: get more characters */ + if ((n = check_termcode(1, buf, len)) < 0 + && (!p_ttimeout || waited * 100L < (p_ttm < 0 ? p_tm : p_ttm))) continue; + /* found a termcode: adjust length */ if (n > 0) len = n; diff --git a/src/version.c b/src/version.c index 4719a6d5..0f604a25 100644 --- a/src/version.c +++ b/src/version.c @@ -667,6 +667,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 90, +/**/ 89, /**/ 88, |