summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Dewar <seandewar@users.noreply.github.com>2022-05-12 17:44:29 +0100
committerBram Moolenaar <Bram@vim.org>2022-05-12 17:44:29 +0100
commit39c46b43780ad00ea27a93d92aadd44753d4c3ea (patch)
treecbff3449a4e81b6f40e31b37336fafbb3e7d085f
parentde216732d45caa87e6f08f4319aa71e805a89a0e (diff)
downloadvim-git-39c46b43780ad00ea27a93d92aadd44753d4c3ea.tar.gz
patch 8.2.4943: changing 'switchbuf' may have no effectv8.2.4943
Problem: Changing 'switchbuf' may have no effect. Solution: Handle 'switchbuf' in didset_string_options(). (Sean Dewar, closes #10406)
-rw-r--r--src/optionstr.c1
-rw-r--r--src/testdir/test_options.vim11
-rw-r--r--src/version.c2
3 files changed, 14 insertions, 0 deletions
diff --git a/src/optionstr.c b/src/optionstr.c
index 26dd55120..73a57703b 100644
--- 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)
diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim
index 8854ffd24..0a533152b 100644
--- 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
diff --git a/src/version.c b/src/version.c
index 480acfda1..0ebc9cbe9 100644
--- 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,