summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.1118
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.1118')
-rw-r--r--data/vim/patches/8.1.1118141
1 files changed, 141 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.1118 b/data/vim/patches/8.1.1118
new file mode 100644
index 000000000..a5bb18311
--- /dev/null
+++ b/data/vim/patches/8.1.1118
@@ -0,0 +1,141 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.1118
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 8.1.1118
+Problem: A couple of conditions are hard to understand.
+Solution: Split the conditions into pieces. (Ozaki Kiichi, closes #3879)
+Files: src/getchar.c, src/os_unix.c
+
+
+*** ../vim-8.1.1117/src/getchar.c 2019-03-30 18:46:57.348077402 +0100
+--- src/getchar.c 2019-04-04 20:05:56.187300570 +0200
+***************
+*** 2030,2035 ****
+--- 2030,2037 ----
+ */
+ for (;;)
+ {
++ long wait_time;
++
+ /*
+ * ui_breakcheck() is slow, don't use it too often when
+ * inside a mapping. But call it each time for typed
+***************
+*** 2828,2845 ****
+ // that has a <Nop> RHS.
+ timedout = FALSE;
+
+ wait_tb_len = typebuf.tb_len;
+ c = inchar(typebuf.tb_buf + typebuf.tb_off + typebuf.tb_len,
+ typebuf.tb_buflen - typebuf.tb_off - typebuf.tb_len - 1,
+! !advance
+! ? 0
+! : ((typebuf.tb_len == 0
+! || !(p_timeout || (p_ttimeout
+! && keylen == KEYLEN_PART_KEY)))
+! ? -1L
+! : ((keylen == KEYLEN_PART_KEY && p_ttm >= 0)
+! ? p_ttm
+! : p_tm)));
+
+ #ifdef FEAT_CMDL_INFO
+ if (i != 0)
+--- 2830,2854 ----
+ // that has a <Nop> RHS.
+ timedout = FALSE;
+
++ if (advance)
++ {
++ if (typebuf.tb_len == 0
++ || !(p_timeout
++ || (p_ttimeout && keylen == KEYLEN_PART_KEY)))
++ // blocking wait
++ wait_time = -1L;
++ else if (keylen == KEYLEN_PART_KEY && p_ttm >= 0)
++ wait_time = p_ttm;
++ else
++ wait_time = p_tm;
++ }
++ else
++ wait_time = 0;
++
+ wait_tb_len = typebuf.tb_len;
+ c = inchar(typebuf.tb_buf + typebuf.tb_off + typebuf.tb_len,
+ typebuf.tb_buflen - typebuf.tb_off - typebuf.tb_len - 1,
+! wait_time);
+
+ #ifdef FEAT_CMDL_INFO
+ if (i != 0)
+*** ../vim-8.1.1117/src/os_unix.c 2019-03-30 18:46:57.360077328 +0100
+--- src/os_unix.c 2019-04-04 20:08:33.214471353 +0200
+***************
+*** 5607,5625 ****
+ close(fd_err[1]);
+ if (channel != NULL)
+ {
+! int in_fd = use_file_for_in || use_null_for_in
+! ? INVALID_FD : fd_in[1] < 0 ? pty_master_fd : fd_in[1];
+! int out_fd = use_file_for_out || use_null_for_out
+! ? INVALID_FD : fd_out[0] < 0 ? pty_master_fd : fd_out[0];
+! /* When using pty_master_fd only set it for stdout, do not duplicate it
+! * for stderr, it only needs to be read once. */
+! int err_fd = use_out_for_err || use_file_for_err || use_null_for_err
+! ? INVALID_FD
+! : fd_err[0] >= 0
+! ? fd_err[0]
+! : (out_fd == pty_master_fd
+! ? INVALID_FD
+! : pty_master_fd);
+
+ channel_set_pipes(channel, in_fd, out_fd, err_fd);
+ channel_set_job(channel, job, options);
+--- 5607,5631 ----
+ close(fd_err[1]);
+ if (channel != NULL)
+ {
+! int in_fd = INVALID_FD;
+! int out_fd = INVALID_FD;
+! int err_fd = INVALID_FD;
+!
+! if (!(use_file_for_in || use_null_for_in))
+! in_fd = fd_in[1] >= 0 ? fd_in[1] : pty_master_fd;
+!
+! if (!(use_file_for_out || use_null_for_out))
+! out_fd = fd_out[0] >= 0 ? fd_out[0] : pty_master_fd;
+!
+! // When using pty_master_fd only set it for stdout, do not duplicate
+! // it for stderr, it only needs to be read once.
+! if (!(use_out_for_err || use_file_for_err || use_null_for_err))
+! {
+! if (fd_err[0] >= 0)
+! err_fd = fd_err[0];
+! else if (out_fd != pty_master_fd)
+! err_fd = pty_master_fd;
+! }
+
+ channel_set_pipes(channel, in_fd, out_fd, err_fd);
+ channel_set_job(channel, job, options);
+*** ../vim-8.1.1117/src/version.c 2019-04-04 19:06:11.147333162 +0200
+--- src/version.c 2019-04-04 20:00:40.008936695 +0200
+***************
+*** 773,774 ****
+--- 773,776 ----
+ { /* Add new patch number below this line */
++ /**/
++ 1118,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+197. Your desk collapses under the weight of your computer peripherals.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ an exciting new programming language -- http://www.Zimbu.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///