updated for version 7.0-041
diff --git a/src/eval.c b/src/eval.c
index 3369789..642f7ea 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -16465,9 +16465,12 @@
long i = 0;
long n;
- /* List must be: [fnum, lnum, col, coladd] */
- if (arg->v_type != VAR_LIST || l == NULL
- || l->lv_len != (fnump == NULL ? 3 : 4))
+ /* List must be: [fnum, lnum, col, coladd], where "fnum" is only there
+ * when "fnump" isn't NULL and "coladd" is optional. */
+ if (arg->v_type != VAR_LIST
+ || l == NULL
+ || l->lv_len < (fnump == NULL ? 2 : 3)
+ || l->lv_len > (fnump == NULL ? 3 : 4))
return FAIL;
if (fnump != NULL)
@@ -16493,8 +16496,9 @@
#ifdef FEAT_VIRTUALEDIT
n = list_find_nr(l, i, NULL);
if (n < 0)
- return FAIL;
- posp->coladd = n;
+ posp->coladd = 0;
+ else
+ posp->coladd = n;
#endif
return OK;
diff --git a/src/version.c b/src/version.c
index 038e4ac..48e0fd6 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 41,
+/**/
40,
/**/
39,