I missed a path in patch 866 and now mappings fail if any clientserver message is received between the keys of a mapping.
This patch fixes this by having mch_inchar send control back to WaitForChar when it is interrupted by server messages, similar to how it handles resizes. Thanks, James -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
diff --git a/src/os_unix.c b/src/os_unix.c index 8f059be..314a906 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