diff --git a/src/fileio.c b/src/fileio.c index f02925bed5..700bd3ea53 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -9524,6 +9524,12 @@ apply_autocmds_group( * ColorScheme, QuickFixCmd* or DirChanged */ if (event == EVENT_FILETYPE || event == EVENT_SYNTAX + || event == EVENT_CMDLINECHANGED + || event == EVENT_CMDLINEENTER + || event == EVENT_CMDLINELEAVE + || event == EVENT_CMDWINENTER + || event == EVENT_CMDWINLEAVE + || event == EVENT_CMDUNDEFINED || event == EVENT_FUNCUNDEFINED || event == EVENT_REMOTEREPLY || event == EVENT_SPELLFILEMISSING @@ -9532,7 +9538,10 @@ apply_autocmds_group( || event == EVENT_OPTIONSET || event == EVENT_QUICKFIXCMDPOST || event == EVENT_DIRCHANGED) + { fname = vim_strsave(fname); + autocmd_fname_full = TRUE; /* don't expand it later */ + } else fname = FullName_save(fname, FALSE); } diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim index 2d7956f45d..1c34e3049b 100644 --- a/src/testdir/test_autocmd.vim +++ b/src/testdir/test_autocmd.vim @@ -837,6 +837,8 @@ func Test_Cmdline() au! CmdlineEnter au! CmdlineLeave + let save_shellslash = &shellslash + set noshellslash au! CmdlineEnter / let g:entered = expand('') au! CmdlineLeave / let g:left = expand('') let g:entered = 0 @@ -849,6 +851,7 @@ func Test_Cmdline() bwipe! au! CmdlineEnter au! CmdlineLeave + let &shellslash = save_shellslash endfunc " Test for BufWritePre autocommand that deletes or unloads the buffer. diff --git a/src/version.c b/src/version.c index a18394a823..28a053a58e 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1748, /**/ 1747, /**/