changeset 22707:9ff187b1652e v8.2.1902

patch 8.2.1902: default option values changed with :badd for existing buffer Commit: https://github.com/vim/vim/commit/e974fa7b2b98e53a59d5ef16a6a1291f12a32e33 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Oct 25 15:02:51 2020 +0100 patch 8.2.1902: default option values changed with :badd for existing buffer 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)
author Bram Moolenaar <Bram@vim.org>
date Sun, 25 Oct 2020 15:15:03 +0100
parents 9087acfe9333
children ccca10ddb762
files src/ex_cmds.c src/testdir/test_buffer.vim src/version.c
diffstat 3 files changed, 17 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- 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)
 		{
--- 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
--- 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,