summaryrefslogtreecommitdiffstats
path: root/src/globals.h
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-12-05 21:22:08 +0100
committerBram Moolenaar <Bram@vim.org>2020-12-05 21:22:08 +0100
commit56602ba153af7130b76daf83933922aaea3e2646 (patch)
tree13cf686a65d3673353517f66f2d9ad88f336cb8b /src/globals.h
parentf665e97ffa06817975810cb511b13dbaa83ec630 (diff)
patch 8.2.2097: Vim9: using :silent! when calling a function prevents abortv8.2.2097
Problem: Vim9: using :silent! when calling a function prevents abortng that function. Solution: Add emsg_silent_def and did_emsg_def.
Diffstat (limited to 'src/globals.h')
-rw-r--r--src/globals.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/globals.h b/src/globals.h
index af1a85c82a..4f54d0faec 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -230,6 +230,8 @@ EXTERN int did_endif INIT(= FALSE); // just had ":endif"
EXTERN int did_emsg; // set by emsg() when the message
// is displayed or thrown
#ifdef FEAT_EVAL
+EXTERN int did_emsg_def; // set by emsg() when emsg_silent
+ // is set before calling a function
EXTERN int did_emsg_cumul; // cumulative did_emsg, increased
// when did_emsg is reset.
EXTERN int called_vim_beep; // set if vim_beep() is called
@@ -1134,6 +1136,10 @@ EXTERN int is_export INIT(= FALSE); // :export {cmd}
EXTERN int msg_silent INIT(= 0); // don't print messages
EXTERN int emsg_silent INIT(= 0); // don't print error messages
+#ifdef FEAT_EVAL
+EXTERN int emsg_silent_def INIT(= 0); // value of emsg_silent when a :def
+ // function is called
+#endif
EXTERN int emsg_noredir INIT(= 0); // don't redirect error messages
EXTERN int cmd_silent INIT(= FALSE); // don't echo the command line