summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.0171
diff options
context:
space:
mode:
authorSam Bingner <sam@bingner.com>2018-08-03 15:06:38 -1000
committerSam Bingner <sam@bingner.com>2018-08-03 15:06:38 -1000
commit135b410607f008d3709a7b1374f3f37924eb9fe4 (patch)
treef4756ef3a354f6001360db894db010df85177f76 /data/vim/patches/8.1.0171
parentbd1eb51da0d3f250793e1868d73babdf495c921f (diff)
Update vim
Diffstat (limited to 'data/vim/patches/8.1.0171')
-rw-r--r--data/vim/patches/8.1.0171105
1 files changed, 105 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.0171 b/data/vim/patches/8.1.0171
new file mode 100644
index 000000000..3ea192f73
--- /dev/null
+++ b/data/vim/patches/8.1.0171
@@ -0,0 +1,105 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.0171
+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.0171
+Problem: Typing CTRL-W n in a terminal window causes ml_get error.
+Solution: When resizing the terminal outside of terminal_loop() make sure
+ the snapshot is complete.
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+
+*** ../vim-8.1.0170/src/terminal.c Sun Jul 8 16:50:33 2018
+--- src/terminal.c Sun Jul 8 20:48:42 2018
+***************
+*** 3134,3146 ****
+
+ if (term->tl_rows != newrows || term->tl_cols != newcols)
+ {
+-
+-
+ term->tl_vterm_size_changed = TRUE;
+ vterm_set_size(vterm, newrows, newcols);
+ ch_log(term->tl_job->jv_channel, "Resizing terminal to %d lines",
+ newrows);
+ term_report_winsize(term, newrows, newcols);
+ }
+
+ /* The cursor may have been moved when resizing. */
+--- 3134,3149 ----
+
+ if (term->tl_rows != newrows || term->tl_cols != newcols)
+ {
+ term->tl_vterm_size_changed = TRUE;
+ vterm_set_size(vterm, newrows, newcols);
+ ch_log(term->tl_job->jv_channel, "Resizing terminal to %d lines",
+ newrows);
+ term_report_winsize(term, newrows, newcols);
++
++ // Updating the terminal size will cause the snapshot to be cleared.
++ // When not in terminal_loop() we need to restore it.
++ if (term != in_terminal_loop)
++ may_move_terminal_to_buffer(term, FALSE);
+ }
+
+ /* The cursor may have been moved when resizing. */
+*** ../vim-8.1.0170/src/testdir/test_terminal.vim Tue Jun 19 20:08:10 2018
+--- src/testdir/test_terminal.vim Sun Jul 8 20:46:08 2018
+***************
+*** 1525,1530 ****
+--- 1525,1556 ----
+ exe buf . 'bwipe!'
+ endfunc
+
++ " Resizing the terminal window caused an ml_get error.
++ " TODO: This does not reproduce the original problem.
++ func Test_terminal_resize()
++ set statusline=x
++ terminal
++ call assert_equal(2, winnr('$'))
++
++ " Fill the terminal with text.
++ if has('win32')
++ call feedkeys("dir\<CR>", 'xt')
++ else
++ call feedkeys("ls\<CR>", 'xt')
++ endif
++ " Go to Terminal-Normal mode for a moment.
++ call feedkeys("\<C-W>N", 'xt')
++ " Open a new window
++ call feedkeys("i\<C-W>n", 'xt')
++ call assert_equal(3, winnr('$'))
++ redraw
++
++ close
++ call assert_equal(2, winnr('$'))
++ call feedkeys("exit\<CR>", 'xt')
++ set statusline&
++ endfunc
++
+ " must be nearly the last, we can't go back from GUI to terminal
+ func Test_zz1_terminal_in_gui()
+ if !CanRunGui()
+*** ../vim-8.1.0170/src/version.c Sun Jul 8 19:07:16 2018
+--- src/version.c Sun Jul 8 20:46:58 2018
+***************
+*** 791,792 ****
+--- 791,794 ----
+ { /* Add new patch number below this line */
++ /**/
++ 171,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+215. Your mouse-clicking forearm rivals Popeye's.
+
+ /// 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 ///