aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/message.c
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2022-01-24 22:33:55 +0100
committerGitHub <noreply@github.com>2022-01-24 22:33:55 +0100
commit1b6ae2dbb0aa24748d44752407cd18b5abec1d0a (patch)
tree5a518f3dfb4b6af6afb0180017984b523333b09d /src/nvim/message.c
parent1907a9481423ccf4433f8184bbfdc633589e43f5 (diff)
parenta4069a3eed65f14b1149c6cda8638dcb49ab5027 (diff)
downloadrneovim-1b6ae2dbb0aa24748d44752407cd18b5abec1d0a.tar.gz
rneovim-1b6ae2dbb0aa24748d44752407cd18b5abec1d0a.tar.bz2
rneovim-1b6ae2dbb0aa24748d44752407cd18b5abec1d0a.zip
Merge pull request #15910 from glacambre/silent_stdioopen
feat(--headless): do not print anything when stdioopen() has been used
Diffstat (limited to 'src/nvim/message.c')
-rw-r--r--src/nvim/message.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/nvim/message.c b/src/nvim/message.c
index 17ccef37f1..e1e253cd2e 100644
--- a/src/nvim/message.c
+++ b/src/nvim/message.c
@@ -2647,6 +2647,17 @@ static void msg_puts_printf(const char *str, const ptrdiff_t maxlen)
char buf[7];
char *p;
+ if (on_print.type != kCallbackNone) {
+ typval_T argv[1];
+ argv[0].v_type = VAR_STRING;
+ argv[0].v_lock = VAR_UNLOCKED;
+ argv[0].vval.v_string = (char_u *)str;
+ typval_T rettv = TV_INITIAL_VALUE;
+ callback_call(&on_print, 1, argv, &rettv);
+ tv_clear(&rettv);
+ return;
+ }
+
while ((maxlen < 0 || s - str < maxlen) && *s != NUL) {
int len = utf_ptr2len((const char_u *)s);
if (!(silent_mode && p_verbose == 0)) {