patch 8.2.1289: crash when using a custom completion function
Problem: Crash when using a custom completion function.
Solution: Initialize all of the expand_T. (closes #6532)
diff --git a/src/cmdexpand.c b/src/cmdexpand.c
index a10fff8..fe82ab7 100644
--- a/src/cmdexpand.c
+++ b/src/cmdexpand.c
@@ -494,18 +494,9 @@
void
ExpandInit(expand_T *xp)
{
- xp->xp_pattern = NULL;
- xp->xp_pattern_len = 0;
+ CLEAR_POINTER(xp);
xp->xp_backslash = XP_BS_NONE;
-#ifndef BACKSLASH_IN_FILENAME
- xp->xp_shell = FALSE;
-#endif
xp->xp_numfiles = -1;
- xp->xp_files = NULL;
-#if defined(FEAT_EVAL)
- xp->xp_arg = NULL;
-#endif
- xp->xp_line = NULL;
}
/*
@@ -2425,7 +2416,7 @@
# if defined(FEAT_EVAL)
/*
* Call "user_expand_func()" to invoke a user defined Vim script function and
- * return the result (either a string or a List).
+ * return the result (either a string, a List or NULL).
*/
static void *
call_user_expand_func(