changeset 28839:b93668df9160 v8.2.4943

patch 8.2.4943: changing 'switchbuf' may have no effect Commit: https://github.com/vim/vim/commit/39c46b43780ad00ea27a93d92aadd44753d4c3ea Author: Sean Dewar <seandewar@users.noreply.github.com> Date: Thu May 12 17:44:29 2022 +0100 patch 8.2.4943: changing 'switchbuf' may have no effect Problem: Changing 'switchbuf' may have no effect. Solution: Handle 'switchbuf' in didset_string_options(). (Sean Dewar, closes #10406)
author Bram Moolenaar <Bram@vim.org>
date Thu, 12 May 2022 18:45:02 +0200
parents 56bcafbfd84a
children 4318ef970867
files src/optionstr.c src/testdir/test_options.vim src/version.c
diffstat 3 files changed, 14 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/optionstr.c
+++ b/src/optionstr.c
@@ -125,6 +125,7 @@ didset_string_options(void)
 #if defined(FEAT_TOOLBAR) && defined(FEAT_GUI_GTK)
     (void)opt_strings_flags(p_tbis, p_tbis_values, &tbis_flags, FALSE);
 #endif
+    (void)opt_strings_flags(p_swb, p_swb_values, &swb_flags, TRUE);
 }
 
 #if defined(FEAT_EVAL)
--- a/src/testdir/test_options.vim
+++ b/src/testdir/test_options.vim
@@ -1299,4 +1299,15 @@ func Test_set_completion_2()
   set wildoptions=
 endfunc
 
+func Test_switchbuf_reset()
+  set switchbuf=useopen
+  sblast
+  call assert_equal(1, winnr('$'))
+  set all&
+  call assert_equal('', &switchbuf)
+  sblast
+  call assert_equal(2, winnr('$'))
+  only!
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4943,
+/**/
     4942,
 /**/
     4941,