diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-12-13 02:46:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-13 02:46:12 +0100 |
commit | 1cca5da05ff1a35cfdb930be82449705507ec661 (patch) | |
tree | 20f58b62ef6fafad7c39ce1a91c2e2f98cf91b59 /src | |
parent | af368981a7ce817391a03dae5816d167aa2dc189 (diff) | |
parent | 4157f4c72db7eab71b9670d517a8cbd3ed8909ba (diff) | |
download | rneovim-1cca5da05ff1a35cfdb930be82449705507ec661.tar.gz rneovim-1cca5da05ff1a35cfdb930be82449705507ec661.tar.bz2 rneovim-1cca5da05ff1a35cfdb930be82449705507ec661.zip |
Merge #9348 from janlazo/vim-8.0.1748
vim-patch:8.0.1748
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/ex_docmd.c | 5 | ||||
-rw-r--r-- | src/nvim/fileio.c | 8 | ||||
-rw-r--r-- | src/nvim/testdir/test_autocmd.vim | 3 |
3 files changed, 14 insertions, 2 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index 6361267d9b..4ef332186e 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -8654,7 +8654,10 @@ eval_vars ( break; case SPEC_AFILE: // file name for autocommand - if (autocmd_fname != NULL && !path_is_absolute(autocmd_fname)) { + if (autocmd_fname != NULL + && !path_is_absolute(autocmd_fname) + // For CmdlineEnter and related events, <afile> is not a path! #9348 + && !strequal("/", (char *)autocmd_fname)) { // Still need to turn the fname into a full path. It was // postponed to avoid a delay when <afile> is not used. result = (char_u *)FullName_save((char *)autocmd_fname, false); diff --git a/src/nvim/fileio.c b/src/nvim/fileio.c index 8e5455bc67..fe12a69801 100644 --- a/src/nvim/fileio.c +++ b/src/nvim/fileio.c @@ -6903,7 +6903,13 @@ static bool apply_autocmds_group(event_T event, char_u *fname, char_u *fname_io, } else { sfname = vim_strsave(fname); // Don't try expanding the following events. - if (event == EVENT_COLORSCHEME + if (event == EVENT_CMDLINECHANGED + || event == EVENT_CMDLINEENTER + || event == EVENT_CMDLINELEAVE + || event == EVENT_CMDWINENTER + || event == EVENT_CMDWINLEAVE + || event == EVENT_CMDUNDEFINED + || event == EVENT_COLORSCHEME || event == EVENT_COLORSCHEMEPRE || event == EVENT_DIRCHANGED || event == EVENT_FILETYPE diff --git a/src/nvim/testdir/test_autocmd.vim b/src/nvim/testdir/test_autocmd.vim index 5deb789f48..253d6750ed 100644 --- a/src/nvim/testdir/test_autocmd.vim +++ b/src/nvim/testdir/test_autocmd.vim @@ -840,6 +840,8 @@ func Test_Cmdline() au! CmdlineEnter au! CmdlineLeave + let save_shellslash = &shellslash + set noshellslash au! CmdlineEnter / let g:entered = expand('<afile>') au! CmdlineLeave / let g:left = expand('<afile>') let g:entered = 0 @@ -852,6 +854,7 @@ func Test_Cmdline() bwipe! au! CmdlineEnter au! CmdlineLeave + let &shellslash = save_shellslash endfunc " Test for BufWritePre autocommand that deletes or unloads the buffer. |