vim-patch:8.2.0267: no check for a following cmd when calling a function fails

Problem:    No check for a following command when calling a function fails.
Solution:   Also check for a following command when inside a try block.
            (closes vim/vim#5642)
e51bb17dd0
This commit is contained in:
Jan Edmund Lazo 2020-02-16 17:58:57 -05:00
parent acc5fd9fac
commit 1ce4b3c9a7
No known key found for this signature in database
GPG Key ID: 64915E6E9F735B15
2 changed files with 6 additions and 1 deletions

View File

@ -2852,7 +2852,8 @@ void ex_call(exarg_T *eap)
}
}
if (!failed) {
// When inside :try we need to check for following "| catch".
if (!failed || eap->cstack->cs_trylevel > 0) {
// Check for trailing illegal characters and a following command.
if (!ends_excmd(*arg)) {
emsg_severe = TRUE;

View File

@ -94,3 +94,7 @@ func Test_user_func()
unlet g:retval g:counter
enew!
endfunc
func Test_failed_call_in_try()
try | call UnknownFunc() | catch | endtry
endfunc