diff options
author | Sam Bingner <sam@bingner.com> | 2018-08-03 15:06:38 -1000 |
---|---|---|
committer | Sam Bingner <sam@bingner.com> | 2018-08-03 15:06:38 -1000 |
commit | 135b410607f008d3709a7b1374f3f37924eb9fe4 (patch) | |
tree | f4756ef3a354f6001360db894db010df85177f76 /data/vim/patches/8.1.0171 | |
parent | bd1eb51da0d3f250793e1868d73babdf495c921f (diff) |
Update vim
Diffstat (limited to 'data/vim/patches/8.1.0171')
-rw-r--r-- | data/vim/patches/8.1.0171 | 105 |
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 /// |