diff --git a/src/version.c b/src/version.c index 2e2a4d051a..35f8df8e80 100644 --- a/src/version.c +++ b/src/version.c @@ -738,6 +738,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 566, /**/ 565, /**/ diff --git a/src/vim9execute.c b/src/vim9execute.c index 4ac760e66d..cddb9d2137 100644 --- a/src/vim9execute.c +++ b/src/vim9execute.c @@ -524,7 +524,7 @@ call_def_function( else argc -= vararg_count; if (exe_newlist(vararg_count, &ectx) == FAIL) - goto failed; + goto failed_early; if (defcount > 0) // Move varargs list to below missing default arguments. *STACK_TV_BOT(defcount- 1) = *STACK_TV_BOT(-1); @@ -1773,7 +1773,7 @@ failed: // When failed need to unwind the call stack. while (ectx.ec_frame != initial_frame_ptr) func_return(&ectx); - +failed_early: for (idx = 0; idx < ectx.ec_stack.ga_len; ++idx) clear_tv(STACK_TV(idx)); vim_free(ectx.ec_stack.ga_data);