diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/eval.c | 2 | ||||
-rw-r--r-- | src/nvim/eval/userfunc.c | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c index b0f7aefc7b..007b16568f 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -2630,7 +2630,7 @@ static int may_call_simple_func(const char *arg, typval_T *rettv) if (parens != NULL && *skipwhite(parens + 2) == NUL) { if (strnequal(arg, "v:lua.", 6)) { const char *p = arg + 6; - if (skip_luafunc_name(p) == parens) { + if (p != parens && skip_luafunc_name(p) == parens) { r = call_simple_luafunc(p, (size_t)(parens - p), rettv); } } else { diff --git a/src/nvim/eval/userfunc.c b/src/nvim/eval/userfunc.c index f7ce5334f0..d2bae72531 100644 --- a/src/nvim/eval/userfunc.c +++ b/src/nvim/eval/userfunc.c @@ -1779,6 +1779,9 @@ theend: int call_simple_luafunc(const char *funcname, size_t len, typval_T *rettv) FUNC_ATTR_NONNULL_ALL { + rettv->v_type = VAR_NUMBER; // default rettv is number zero + rettv->vval.v_number = 0; + typval_T argvars[1]; argvars[0].v_type = VAR_UNKNOWN; nlua_typval_call(funcname, len, argvars, 0, rettv); |