diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-08-23 18:12:28 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-23 18:12:28 +0800 |
commit | df4709ddf6d1ed524adae9373ecb762b9db11814 (patch) | |
tree | d65ac06e9560138c20f09d6f8269b4d9e2d29713 /src/nvim/eval/funcs.c | |
parent | 42e9fe7d958e0ba025034c330d8e29293d828b60 (diff) | |
parent | d459b6687704b7d1f230d0b14c0d59f87cf5f67d (diff) | |
download | rneovim-df4709ddf6d1ed524adae9373ecb762b9db11814.tar.gz rneovim-df4709ddf6d1ed524adae9373ecb762b9db11814.tar.bz2 rneovim-df4709ddf6d1ed524adae9373ecb762b9db11814.zip |
Merge pull request #19905 from zeertzjq/vim-8.2.4726
vim-patch:8.2.{4726,4740,4741,4749,4841,4842}: expand('<script>')
Diffstat (limited to 'src/nvim/eval/funcs.c')
-rw-r--r-- | src/nvim/eval/funcs.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index 181b17f747..8d5b8c850c 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -1958,7 +1958,6 @@ static void f_exists(typval_T *argvars, typval_T *rettv, FunPtr fptr) /// "expand()" function static void f_expand(typval_T *argvars, typval_T *rettv, FunPtr fptr) { - char *errormsg; int options = WILD_SILENT|WILD_USE_NL|WILD_LIST_NOTFOUND; bool error = false; #ifdef BACKSLASH_IN_FILENAME @@ -1978,10 +1977,17 @@ static void f_expand(typval_T *argvars, typval_T *rettv, FunPtr fptr) const char *s = tv_get_string(&argvars[0]); if (*s == '%' || *s == '#' || *s == '<') { - emsg_off++; + if (p_verbose == 0) { + emsg_off++; + } size_t len; - char_u *result = eval_vars((char_u *)s, (char_u *)s, &len, NULL, &errormsg, NULL); - emsg_off--; + char *errormsg = NULL; + char_u *result = eval_vars((char_u *)s, (char_u *)s, &len, NULL, &errormsg, NULL, false); + if (p_verbose == 0) { + emsg_off--; + } else if (errormsg != NULL) { + emsg(errormsg); + } if (rettv->v_type == VAR_LIST) { tv_list_alloc_ret(rettv, (result != NULL)); if (result != NULL) { |