]> granicus.if.org Git - vim/commitdiff
patch 8.2.1386: backslash not removed afer space with space in 'isfname' v8.2.1386
authorBram Moolenaar <Bram@vim.org>
Fri, 7 Aug 2020 17:12:41 +0000 (19:12 +0200)
committerBram Moolenaar <Bram@vim.org>
Fri, 7 Aug 2020 17:12:41 +0000 (19:12 +0200)
Problem:    Backslash not removed afer space in option with space in
            'isfname'.
Solution:   Do remove backslash before space, also when it is in 'isfname'.
            (Yasuhiro Matsumoto, closes #6651)

src/option.c
src/testdir/test_options.vim
src/version.c

index f66fad9473b33ae0706d978d9d67877a1f968612..648f22db32d48efcf4cae6aed78954745823841e 100644 (file)
@@ -1311,12 +1311,12 @@ do_set(
            {
                if (flags & (P_SECURE | P_NO_ML))
                {
-                   errmsg = _("E520: Not allowed in a modeline");
+                   errmsg = N_("E520: Not allowed in a modeline");
                    goto skip;
                }
                if ((flags & P_MLE) && !p_mle)
                {
-                   errmsg = _("E992: Not allowed in a modeline when 'modelineexpr' is off");
+                   errmsg = N_("E992: Not allowed in a modeline when 'modelineexpr' is off");
                    goto skip;
                }
 #ifdef FEAT_DIFF
@@ -1338,7 +1338,7 @@ do_set(
            // Disallow changing some options in the sandbox
            if (sandbox != 0 && (flags & P_SECURE))
            {
-               errmsg = _(e_sandbox);
+               errmsg = e_sandbox;
                goto skip;
            }
 #endif
@@ -1763,6 +1763,7 @@ do_set(
 #ifdef BACKSLASH_IN_FILENAME
                                        && !((flags & P_EXPAND)
                                                && vim_isfilec(arg[1])
+                                               && !VIM_ISWHITE(arg[1])
                                                && (arg[1] != '\\'
                                                    || (s == newval
                                                        && arg[2] != '\\')))
index 8f27d9c4acdae9bc90ce511a81604cbc18641f76..b3e9da78f71a2e5d316c30fa7991192cc4093189 100644 (file)
@@ -973,4 +973,13 @@ func Test_opt_winminwidth()
   set winwidth&
 endfunc
 
+" Test for setting option value containing spaces with isfname+=32
+func Test_isfname_with_options()
+  set isfname+=32
+  setlocal keywordprg=:term\ help.exe
+  call assert_equal(':term help.exe', &keywordprg)
+  set isfname&
+  setlocal keywordprg&
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
index ea89d2df8c31185faa481c96134e685686400c07..e251ba865b1ddeb620f00e86081f095a0a4eeb0d 100644 (file)
@@ -754,6 +754,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1386,
 /**/
     1385,
 /**/