diff options
-rw-r--r-- | src/version.c | 2 | ||||
-rw-r--r-- | src/vim9execute.c | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/version.c b/src/version.c index 71b180f35..5601c58aa 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2509, +/**/ 2508, /**/ 2507, diff --git a/src/vim9execute.c b/src/vim9execute.c index 89a33b5c6..200139c5b 100644 --- a/src/vim9execute.c +++ b/src/vim9execute.c @@ -2563,12 +2563,11 @@ call_def_function( + ectx.ec_trystack.ga_len; ++ectx.ec_trystack.ga_len; ++trylevel; + CLEAR_POINTER(trycmd); trycmd->tcd_frame_idx = ectx.ec_frame_idx; trycmd->tcd_stack_len = ectx.ec_stack.ga_len; trycmd->tcd_catch_idx = iptr->isn_arg.try.try_catch; trycmd->tcd_finally_idx = iptr->isn_arg.try.try_finally; - trycmd->tcd_caught = FALSE; - trycmd->tcd_return = FALSE; } break; @@ -2670,7 +2669,7 @@ call_def_function( --ectx.ec_stack.ga_len; clear_tv(STACK_TV_BOT(0)); } - if (trycmd->tcd_cont) + if (trycmd->tcd_cont != 0) // handling :continue: jump to outer try block or // start of the loop ectx.ec_iidx = trycmd->tcd_cont; |