diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2016-12-03 22:38:13 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-03 22:38:13 +0100 |
commit | b025474258c602dc1ff7ec61045c90c98a8511fc (patch) | |
tree | 2145dda9b611a04f74bd58d3202a4c97de2b026f /src | |
parent | e29a4ceede086bcf5e6242b75fe8f38c30cf3945 (diff) | |
download | rneovim-b025474258c602dc1ff7ec61045c90c98a8511fc.tar.gz rneovim-b025474258c602dc1ff7ec61045c90c98a8511fc.tar.bz2 rneovim-b025474258c602dc1ff7ec61045c90c98a8511fc.zip |
vim-patch:8.0.0110 (#5700)
Closes #5616
Problem: Drop command doesn't use existing window.
Solution: Check the window width properly. (Hirohito Higashi)
https://github.com/vim/vim/commit/5a030a540f4157d5c9905e3564282c92b4dcec9a
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/buffer.c | 8 | ||||
-rw-r--r-- | src/nvim/testdir/test_tabpage.vim | 11 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/nvim/buffer.c b/src/nvim/buffer.c index 8e6066453c..80db0e2ebc 100644 --- a/src/nvim/buffer.c +++ b/src/nvim/buffer.c @@ -4149,12 +4149,10 @@ do_arg_all ( wpnext = wp->w_next; buf = wp->w_buffer; if (buf->b_ffname == NULL - || (!keep_tabs && buf->b_nwindows > 1) - || wp->w_width != Columns - ) + || (!keep_tabs && (buf->b_nwindows > 1 || wp->w_width != Columns))) { i = opened_len; - else { - /* check if the buffer in this window is in the arglist */ + } else { + // check if the buffer in this window is in the arglist for (i = 0; i < opened_len; ++i) { if (i < alist->al_ga.ga_len && (AARGLIST(alist)[i].ae_fnum == buf->b_fnum diff --git a/src/nvim/testdir/test_tabpage.vim b/src/nvim/testdir/test_tabpage.vim index 0bf7d056de..7c3039ba24 100644 --- a/src/nvim/testdir/test_tabpage.vim +++ b/src/nvim/testdir/test_tabpage.vim @@ -40,7 +40,7 @@ function Test_tabpage() call assert_true(t:val_num == 100 && t:val_str == 'SetTabVar test' && t:val_list == ['red', 'blue', 'green']) tabclose - if has('gui') || has('clientserver') + if has('nvim') || has('gui') || has('clientserver') " Test for ":tab drop exist-file" to keep current window. sp test1 tab drop test1 @@ -64,6 +64,15 @@ function Test_tabpage() call assert_true(tabpagenr() == 2 && tabpagewinnr(2, '$') == 2 && tabpagewinnr(2) == 1) tabclose q + " + " + " Test for ":tab drop vertical-split-window" to jump test1 buffer + tabedit test1 + vnew + tabfirst + tab drop test1 + call assert_equal([2, 2, 2, 2], [tabpagenr('$'), tabpagenr(), tabpagewinnr(2, '$'), tabpagewinnr(2)]) + 1tabonly endif " " |