]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.0.0038: 'listchars' test fails v9.0.0038
authorBram Moolenaar <Bram@vim.org>
Mon, 4 Jul 2022 17:05:51 +0000 (18:05 +0100)
committerBram Moolenaar <Bram@vim.org>
Mon, 4 Jul 2022 17:05:51 +0000 (18:05 +0100)
Problem:    'listchars' test fails.
Solution:   Use window-local value after setting the global value

src/optionstr.c
src/version.c

index 43b7e5097348a3b3150a1a6792a8950d1fb73919..1f9a0e5d5213de857c8509a0c052dc67b428a24e 100644 (file)
@@ -1313,15 +1313,16 @@ ambw_end:
            tabpage_T   *tp;
            win_T       *wp;
 
-           // The current window is set to use the global 'listchars' value.
-           // So clear the window-local value.
+           // If the current window is set to use the global 'listchars'
+           // value, clear the window-local value.
            if (!(opt_flags & OPT_GLOBAL))
                clear_string_option(&curwin->w_p_lcs);
            FOR_ALL_TAB_WINDOWS(tp, wp)
+               // If the current window has a local value need to apply it
+               // again, it was changed when setting the global value.
                // If no error was returned above, we don't expect an error
                // here, so ignore the return value.
-               if (*wp->w_p_lcs == NUL)
-                   (void)set_chars_option(wp, &wp->w_p_lcs);
+               (void)set_chars_option(wp, &wp->w_p_lcs);
 
            redraw_all_later(NOT_VALID);
        }
@@ -1339,15 +1340,16 @@ ambw_end:
            tabpage_T   *tp;
            win_T       *wp;
 
-           // The current window is set to use the global 'fillchars' value.
-           // So clear the window-local value.
+           // If the current window is set to use the global 'fillchars'
+           // value clear the window-local value.
            if (!(opt_flags & OPT_GLOBAL))
                clear_string_option(&curwin->w_p_fcs);
            FOR_ALL_TAB_WINDOWS(tp, wp)
+               // If the current window has a local value need to apply it
+               // again, it was changed when setting the global value.
                // If no error was returned above, we don't expect an error
                // here, so ignore the return value.
-               if (*wp->w_p_fcs == NUL)
-                   (void)set_chars_option(wp, &wp->w_p_fcs);
+               (void)set_chars_option(wp, &wp->w_p_fcs);
 
            redraw_all_later(NOT_VALID);
        }
index 81305060b99ca71a24205bfa5a86698d7d398109..8ddbddaf827951e636761747493f91529e7fb7de 100644 (file)
@@ -735,6 +735,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    38,
 /**/
     37,
 /**/