# HG changeset patch # User Bram Moolenaar # Date 1656954903 -7200 # Node ID 73fb9c6efc6db05075dbdb806817e45fffb32e55 # Parent f85fcaede57f8f70c91724590103066256d46ddb patch 9.0.0038: 'listchars' test fails Commit: https://github.com/vim/vim/commit/5ed26faace574f6b36744f9e17075d7e806aa877 Author: Bram Moolenaar Date: Mon Jul 4 18:05:51 2022 +0100 patch 9.0.0038: 'listchars' test fails Problem: 'listchars' test fails. Solution: Use window-local value after setting the global value diff --git a/src/optionstr.c b/src/optionstr.c --- a/src/optionstr.c +++ b/src/optionstr.c @@ -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); } diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -736,6 +736,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 38, +/**/ 37, /**/ 36,