summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-10-25 15:02:51 +0100
committerBram Moolenaar <Bram@vim.org>2020-10-25 15:02:51 +0100
commite974fa7b2b98e53a59d5ef16a6a1291f12a32e33 (patch)
tree2416e778e2218070a1fdf1bca3c9310df4d2865a
parent4ff2f2fb6bef01a06bd726bae8dfa8dd6355d594 (diff)
patch 8.2.1902: default option values changed with :badd for existing bufferv8.2.1902
Problem: Default option values are changed when using :badd for an existing buffer. Solution: When calling buflist_new() pass a zero line number. (closes #7195)
-rw-r--r--src/ex_cmds.c4
-rw-r--r--src/testdir/test_buffer.vim12
-rw-r--r--src/version.c2
3 files changed, 17 insertions, 1 deletions
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 82e9c577af..a9be36a0c9 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -2630,7 +2630,9 @@ do_ecmd(
{
if (flags & ECMD_ADDBUF)
{
- linenr_T tlnum = 1L;
+ // Default the line number to zero to avoid that a wininfo item
+ // is added for the current window.
+ linenr_T tlnum = 0;
if (command != NULL)
{
diff --git a/src/testdir/test_buffer.vim b/src/testdir/test_buffer.vim
index 8ef41e20fb..9ba72c5616 100644
--- a/src/testdir/test_buffer.vim
+++ b/src/testdir/test_buffer.vim
@@ -362,4 +362,16 @@ func Test_sball_with_count()
%bw!
endfunc
+func Test_badd_options()
+ new SomeNewBuffer
+ setlocal cole=3
+ wincmd p
+ badd SomeNewBuffer
+ new SomeNewBuffer
+ call assert_equal(3, &cole)
+ close
+ close
+ bwipe! SomeNewBuffer
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 5a36f0651e..c2d6240e87 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1902,
+/**/
1901,
/**/
1900,