diff src/cmdexpand.c @ 32796:e98fc0c439aa v9.0.1714

patch 9.0.1714: getcompletion() "cmdline" fails after :autocmd Commit: https://github.com/vim/vim/commit/e4c79d36150431ffb97cb8952ec482af2e57f228 Author: zeertzjq <zeertzjq@outlook.com> Date: Tue Aug 15 22:41:53 2023 +0200 patch 9.0.1714: getcompletion() "cmdline" fails after :autocmd Problem: getcompletion() "cmdline" fails after :autocmd Solution: Use set_cmd_context() instead of set_one_cmd_context(). closes: #12804 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
author Christian Brabandt <cb@256bit.org>
date Tue, 15 Aug 2023 23:00:03 +0200
parents 695b50472e85
children 757409cf4e8a
line wrap: on
line diff
--- a/src/cmdexpand.c
+++ b/src/cmdexpand.c
@@ -4017,9 +4017,10 @@ f_getcompletion(typval_T *argvars, typva
     ExpandInit(&xpc);
     if (STRCMP(type, "cmdline") == 0)
     {
-	set_one_cmd_context(&xpc, pat);
+	int cmdline_len = (int)STRLEN(pat);
+	set_cmd_context(&xpc, pat, cmdline_len, cmdline_len, FALSE);
 	xpc.xp_pattern_len = (int)STRLEN(xpc.xp_pattern);
-	xpc.xp_col = (int)STRLEN(pat);
+	xpc.xp_col = cmdline_len;
     }
     else
     {