From 2ddfd6b9994d1d81b45f38e7e9a2e7ce0333c4e8 Mon Sep 17 00:00:00 2001 From: Sean Dewar Date: Fri, 13 Aug 2021 17:00:16 +0100 Subject: vim-patch:8.2.3337: completing "call g:" returns entries with just "g:" Problem: Completing "call g:" returns entries with just "g:". (Naohiro Ono) Solution: Skip empty strings returned by get_user_func_name(). (closes vim/vim#8753) https://github.com/vim/vim/commit/069f90852f1444cac50491c10dfbd339a3f9e0c8 --- src/nvim/eval/funcs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/nvim/eval') diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index bcbd2266d3..2ab9801fab 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -119,7 +119,7 @@ char_u *get_function_name(expand_T *xp, int idx) intidx = -1; if (intidx < 0) { name = get_user_func_name(xp, idx); - if (name != NULL) { + if (name != NULL && *name != NUL) { if (*name != '<' && STRNCMP("g:", xp->xp_pattern, 2) == 0) { return cat_prefix_varname('g', name); } -- cgit From ebd035f08b667626eb5f2e02d03628483166abed Mon Sep 17 00:00:00 2001 From: Sean Dewar Date: Sat, 21 Aug 2021 16:19:45 +0100 Subject: vim-patch:8.2.3360: user function completion fails with dict function Problem: User function completion fails with dict function. Solution: Do not stop sequencing through the list if user functions when encountering an empty name. (Naohiro Ono, closes vim/vim#8765, closes vim/vim#8774) https://github.com/vim/vim/commit/5aec755b678cfd434b8ea2158d06992f33e1ff80 --- src/nvim/eval/funcs.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/nvim/eval') diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index 2ab9801fab..821a2c8e8e 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -119,8 +119,9 @@ char_u *get_function_name(expand_T *xp, int idx) intidx = -1; if (intidx < 0) { name = get_user_func_name(xp, idx); - if (name != NULL && *name != NUL) { - if (*name != '<' && STRNCMP("g:", xp->xp_pattern, 2) == 0) { + if (name != NULL) { + if (*name != NUL && *name != '<' + && STRNCMP("g:", xp->xp_pattern, 2) == 0) { return cat_prefix_varname('g', name); } return name; -- cgit