diff --git a/src/autocmd.c b/src/autocmd.c index aa1808717b..f0b573bf5d 100644 --- a/src/autocmd.c +++ b/src/autocmd.c @@ -870,7 +870,7 @@ au_event_disable(char *what) if (*what == ',' && *p_ei == NUL) STRCPY(new_ei, what + 1); else - STRCAT(new_ei, what); + STRCPY(new_ei + p_ei_len, what); set_string_option_direct((char_u *)"ei", -1, new_ei, OPT_FREE, SID_NONE); vim_free(new_ei); diff --git a/src/ex_getln.c b/src/ex_getln.c index fa1ea991b6..bc996741a7 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -4716,7 +4716,7 @@ open_cmdwin(void) State = MODE_NORMAL; setmouse(); - // Reset here so it can be set by a CmdWinEnter autocommand. + // Reset here so it can be set by a CmdwinEnter autocommand. cmdwin_result = 0; // Trigger CmdwinEnter autocommands. diff --git a/src/testdir/test_arglist.vim b/src/testdir/test_arglist.vim index 8d81a828b3..d21a222188 100644 --- a/src/testdir/test_arglist.vim +++ b/src/testdir/test_arglist.vim @@ -554,9 +554,34 @@ endfunc func Test_argdo() next! Xa.c Xb.c Xc.c new + + let g:bufenter = 0 + let g:bufleave = 0 + autocmd BufEnter * let g:bufenter += 1 + autocmd BufLeave * let g:bufleave += 1 + let l = [] argdo call add(l, expand('%')) call assert_equal(['Xa.c', 'Xb.c', 'Xc.c'], l) + call assert_equal(3, g:bufenter) + call assert_equal(3, g:bufleave) + + let g:bufenter = 0 + let g:bufleave = 0 + + set eventignore=BufEnter,BufLeave + let l = [] + argdo call add(l, expand('%')) + call assert_equal(['Xa.c', 'Xb.c', 'Xc.c'], l) + call assert_equal(0, g:bufenter) + call assert_equal(0, g:bufleave) + call assert_equal('BufEnter,BufLeave', &eventignore) + set eventignore& + + autocmd! BufEnter + autocmd! BufLeave + unlet g:bufenter + unlet g:bufleave bwipe Xa.c Xb.c Xc.c endfunc diff --git a/src/version.c b/src/version.c index 6b7ca233c8..bc21b037e3 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1193, /**/ 1192, /**/