patch 7.4.2090
Problem: Using submatch() in a lambda passed to substitute() is verbose.
Solution: Use a static list and pass it as an optional argument to the
function. Fix memory leak.
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 2b2d635..adc5352 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -1163,7 +1163,7 @@
argv[1].v_type = VAR_UNKNOWN;
call_func(timer->tr_callback, (int)STRLEN(timer->tr_callback),
- &rettv, 1, argv, 0L, 0L, &dummy, TRUE,
+ &rettv, 1, argv, NULL, 0L, 0L, &dummy, TRUE,
timer->tr_partial, NULL);
clear_tv(&rettv);
}