From 5d8afebb5bf7fb1e8ce06062451dc6a1f9a53ac0 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 19 Nov 2015 19:55:16 +0100 Subject: patch 7.4.928 Problem: A clientserver message interrupts handling keys of a mapping. Solution: Have mch_inchar() send control back to WaitForChar when it is interrupted by server message. (James Kolb) --- src/os_unix.c | 10 ++++++++-- src/version.c | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/os_unix.c b/src/os_unix.c index 8f059be8f..314a906d6 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -401,9 +401,15 @@ mch_inchar(buf, maxlen, wtime, tb_change_cnt) { while (WaitForChar(wtime) == 0) /* no character available */ { - if (!do_resize) /* return if not interrupted by resize */ + if (do_resize) + handle_resize(); +#ifdef FEAT_CLIENTSERVER + else if (!server_waiting()) +#else + else +#endif + /* return if not interrupted by resize or server */ return 0; - handle_resize(); #ifdef MESSAGE_QUEUE parse_queued_messages(); #endif diff --git a/src/version.c b/src/version.c index feda1de76..77a256448 100644 --- a/src/version.c +++ b/src/version.c @@ -741,6 +741,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 928, /**/ 927, /**/ -- cgit v1.2.1