1
0
forked from aniani/vim

patch 8.2.3081: cannot catch errors in a channel command

Problem:    Cannot catch errors in a channel command.
Solution:   Instead of skipping the error make it silent. (closes #8477)
This commit is contained in:
Alisue 2021-06-30 22:01:02 +02:00 committed by Bram Moolenaar
parent 576cb75ceb
commit 11a632d60b
2 changed files with 5 additions and 2 deletions

View File

@ -2545,7 +2545,8 @@ channel_exe_cmd(channel_T *channel, ch_part_T part, typval_T *argv)
char_u *json = NULL;
// Don't pollute the display with errors.
++emsg_skip;
// Do generate the errors so that try/catch works.
++emsg_silent;
if (!is_call)
{
ch_log(channel, "Evaluating expression '%s'", (char *)arg);
@ -2581,7 +2582,7 @@ channel_exe_cmd(channel_T *channel, ch_part_T part, typval_T *argv)
vim_free(json);
}
}
--emsg_skip;
--emsg_silent;
if (tv == &res_tv)
clear_tv(tv);
else

View File

@ -755,6 +755,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
3081,
/**/
3080,
/**/