summaryrefslogtreecommitdiff
path: root/src/vim9execute.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vim9execute.c')
-rw-r--r--src/vim9execute.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vim9execute.c b/src/vim9execute.c
index 41249284d..b882c4d11 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -4737,7 +4737,8 @@ failed_early:
// Not sure if this is necessary.
suppress_errthrow = save_suppress_errthrow;
- if (ret != OK && did_emsg_cumul + did_emsg == did_emsg_before)
+ if (ret != OK && did_emsg_cumul + did_emsg == did_emsg_before
+ && !need_rethrow)
semsg(_(e_unknown_error_while_executing_str),
printable_func_name(ufunc));
funcdepth_restore(orig_funcdepth);