diff options
author | lonerover <pathfinder1644@yahoo.com> | 2017-01-09 12:15:10 +0800 |
---|---|---|
committer | lonerover <pathfinder1644@yahoo.com> | 2017-01-09 12:23:25 +0800 |
commit | a584375e9ffa3804077ec8cedfe8b090c1c11f7a (patch) | |
tree | 00fa5b2438ed460d71ec4d7e4ae648db19364ac9 /src | |
parent | f8f04350bd07bc0f3e6f618bc6c8ff4d7ce3d5ac (diff) | |
download | rneovim-a584375e9ffa3804077ec8cedfe8b090c1c11f7a.tar.gz rneovim-a584375e9ffa3804077ec8cedfe8b090c1c11f7a.tar.bz2 rneovim-a584375e9ffa3804077ec8cedfe8b090c1c11f7a.zip |
vim-patch:7.4.2314
Problem: No error when deleting an augroup while it's the current one.
Solution: Disallow deleting an augroup when it's the current one.
https://github.com/vim/vim/commit/de653f08805dde14424d417502a0480a6ad292f8
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/fileio.c | 2 | ||||
-rw-r--r-- | src/nvim/testdir/test_autocmd.vim | 10 | ||||
-rw-r--r-- | src/nvim/version.c | 2 |
3 files changed, 10 insertions, 4 deletions
diff --git a/src/nvim/fileio.c b/src/nvim/fileio.c index dbe4a144df..e10f7fd2a2 100644 --- a/src/nvim/fileio.c +++ b/src/nvim/fileio.c @@ -5581,6 +5581,8 @@ static void au_del_group(char_u *name) i = au_find_group(name); if (i == AUGROUP_ERROR) { // the group doesn't exist EMSG2(_("E367: No such group: \"%s\""), name); + } else if (i == current_augroup) { + EMSG(_("E936: Cannot delete the current group")); } else { event_T event; AutoPat *ap; diff --git a/src/nvim/testdir/test_autocmd.vim b/src/nvim/testdir/test_autocmd.vim index 7d786c88cf..f05a55f1aa 100644 --- a/src/nvim/testdir/test_autocmd.vim +++ b/src/nvim/testdir/test_autocmd.vim @@ -182,13 +182,17 @@ func Test_augroup_warning() doautocmd VimEnter redir END call assert_true(match(res, "W19:") < 0) + au! VimEnter endfunc func Test_augroup_deleted() - " This caused a crash + " This caused a crash before E936 was introduced augroup x + call assert_fails('augroup! x', 'E936:') + au VimEnter * echo + augroup end augroup! x - au VimEnter * echo - au VimEnter + call assert_true(match(execute('au VimEnter'), "-Deleted-.*VimEnter") >= 0) + au! VimEnter endfunc diff --git a/src/nvim/version.c b/src/nvim/version.c index 2d5f2437de..f34473098c 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -126,7 +126,7 @@ static int included_patches[] = { // 2317, // 2316 NA // 2315, - // 2314, + 2314, 2313, 2312, // 2311 NA |