diff options
author | Bram Moolenaar <Bram@vim.org> | 2021-12-24 19:24:47 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-12-24 19:24:47 +0000 |
commit | b6db1467622be046dbf00b2213fd9f49f4f3cccb (patch) | |
tree | 442a1f5bd1a818ba1667b46b5d588776874b90e6 /src | |
parent | 679140c56bbabf12a199d94f584b1b9dfc9809fd (diff) | |
download | vim-git-b6db1467622be046dbf00b2213fd9f49f4f3cccb.tar.gz |
patch 8.2.3886: can define autocmd for every event by using "au!"v8.2.3886
Problem: Can define autocmd for every event by using "au!".
Solution: Check if a command is present also for "au!".
Diffstat (limited to 'src')
-rw-r--r-- | src/autocmd.c | 2 | ||||
-rw-r--r-- | src/testdir/test_arglist.vim | 2 | ||||
-rw-r--r-- | src/testdir/test_autocmd.vim | 1 | ||||
-rw-r--r-- | src/version.c | 2 |
4 files changed, 5 insertions, 2 deletions
diff --git a/src/autocmd.c b/src/autocmd.c index 789dde1a2..9b6a5d074 100644 --- a/src/autocmd.c +++ b/src/autocmd.c @@ -967,7 +967,7 @@ do_autocmd(exarg_T *eap, char_u *arg_in, int forceit) last_group = AUGROUP_ERROR; // for listing the group name if (*arg == '*' || *arg == NUL || *arg == '|') { - if (!forceit && *cmd != NUL) + if (*cmd != NUL) emsg(_(e_cannot_define_autocommands_for_all_events)); else for (event = (event_T)0; (int)event < NUM_EVENTS; diff --git a/src/testdir/test_arglist.vim b/src/testdir/test_arglist.vim index ca7e2f8e2..9f9957ae1 100644 --- a/src/testdir/test_arglist.vim +++ b/src/testdir/test_arglist.vim @@ -581,7 +581,7 @@ endfunc func Test_clear_arglist_in_all() n 0 00 000 0000 00000 000000 - au! * 0 n 0 + au WinNew 0 n 0 call assert_fails("all", "E1156") au! * endfunc diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim index 4bdb8dc22..b6f621dbf 100644 --- a/src/testdir/test_autocmd.vim +++ b/src/testdir/test_autocmd.vim @@ -1896,6 +1896,7 @@ endfunc func Test_autocommand_all_events() call assert_fails('au * * bwipe', 'E1155:') call assert_fails('au * x bwipe', 'E1155:') + call assert_fails('au! * x bwipe', 'E1155:') endfunc function s:Before_test_dirchanged() diff --git a/src/version.c b/src/version.c index b7b5441e7..14e65f145 100644 --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 3886, +/**/ 3885, /**/ 3884, |