Mercurial > vim
changeset 23177:cc24ac009f29 v8.2.2134
patch 8.2.2134: Vim9: get E1099 when autocmd triggered in builtin function
Commit: https://github.com/vim/vim/commit/57f799e6a4a56f41570c752c66dc2f692b1f2c2f
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Dec 12 20:42:19 2020 +0100
patch 8.2.2134: Vim9: get E1099 when autocmd triggered in builtin function
Problem: Vim9: get E1099 when autocmd triggered in builtin function.
Solution: Check that did_emsg increased instead of checking that it changed.
(closes #7448)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 12 Dec 2020 20:45:03 +0100 |
parents | f77a88165ed6 |
children | 97d5bc8b35a4 |
files | src/testdir/test_vim9_func.vim src/version.c src/vim9execute.c |
diffstat | 3 files changed, 23 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1824,6 +1824,26 @@ def Test_reset_did_emsg() delfunc! g:Func enddef +def Test_did_emsg_reset() + # executing an autocommand resets did_emsg, this should not result in a + # builtin function considered failing + var lines =<< trim END + vim9script + au BufWinLeave * # + def Func() + popup_menu('', {callback: {-> popup_create('', {})->popup_close()}}) + eval [][0] + enddef + nno <F3> <cmd>call <sid>Func()<cr> + feedkeys("\<F3>\e", 'xt') + END + writefile(lines, 'XemsgReset') + assert_fails('so XemsgReset', ['E684:', 'E684:'], lines, 2) + delete('XemsgReset') + nunmap <F3> + au! BufWinLeave +enddef + def Test_abort_with_silent_call() var lines =<< trim END vim9script