diff src/userfunc.c @ 18572:23fef64352a1 v8.1.2280

patch 8.1.2280: crash when passing partial to substitute() Commit: https://github.com/vim/vim/commit/b0745b221d284e381f1bd4b591cd68ea54b6a51d Author: Bram Moolenaar <Bram@vim.org> Date: Sat Nov 9 22:28:11 2019 +0100 patch 8.1.2280: crash when passing partial to substitute() Problem: Crash when passing partial to substitute(). Solution: Take extra arguments into account. (closes https://github.com/vim/vim/issues/5186)
author Bram Moolenaar <Bram@vim.org>
date Sat, 09 Nov 2019 22:30:04 +0100
parents c0cd979000f9
children e9675870c480
line wrap: on
line diff
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -1588,7 +1588,8 @@ call_func(
 	    else if (fp != NULL)
 	    {
 		if (funcexe->argv_func != NULL)
-		    argcount = funcexe->argv_func(argcount, argvars,
+		    // postponed filling in the arguments, do it now
+		    argcount = funcexe->argv_func(argcount, argvars, argv_clear,
 							   fp->uf_args.ga_len);
 
 		if (funcexe->basetv != NULL)