]> granicus.if.org Git - vim/commitdiff
patch 8.0.0704: problems with autocommands when opening help v8.0.0704
authorBram Moolenaar <Bram@vim.org>
Sun, 9 Jul 2017 13:41:53 +0000 (15:41 +0200)
committerBram Moolenaar <Bram@vim.org>
Sun, 9 Jul 2017 13:41:53 +0000 (15:41 +0200)
Problem:    Problems with autocommands when opening help.
Solution:   Avoid using invalid "varp" value.  Allow using :wincmd if buffer
            is locked. (closes #1806, closes #1804)

src/ex_cmds.h
src/option.c
src/version.c

index cde0157636c92f9d6e9114eeb186e14e390de791..0844a9cc27d8fae59e5cf281fa4b68ee76075495 100644 (file)
@@ -1625,7 +1625,7 @@ EX(CMD_winsize,           "winsize",      ex_winsize,
                        EXTRA|NEEDARG|TRLBAR,
                        ADDR_LINES),
 EX(CMD_wincmd,         "wincmd",       ex_wincmd,
-                       NEEDARG|WORD1|RANGE|NOTADR,
+                       NEEDARG|WORD1|RANGE|NOTADR|CMDWIN,
                        ADDR_WINDOWS),
 EX(CMD_windo,          "windo",        ex_listdo,
                        NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL,
index ebc547e7314475c9a007826f65d037ebf5700d9a..cdb0d67e6afc355c9a877f3026394dbda260bd52 100644 (file)
@@ -7570,6 +7570,9 @@ did_set_string_option(
                did_filetype = TRUE;
                apply_autocmds(EVENT_FILETYPE, curbuf->b_p_ft,
                                               curbuf->b_fname, TRUE, curbuf);
+               /* Just in case the old "curbuf" is now invalid. */
+               if (varp != &(curbuf->b_p_ft))
+                   varp = NULL;
            }
        }
 #endif
index d494900b0e328fbd24d925a9b49aa476c8a51dd2..8129a7eb84240c9de2cf1335bd3fb326e40a4ae6 100644 (file)
@@ -764,6 +764,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    704,
 /**/
     703,
 /**/