Mercurial > vim
diff src/ex_eval.c @ 25537:e0d6268c153a v8.2.3305
patch 8.2.3305: Vim9: :finally in skipped block not handled correctly
Commit: https://github.com/vim/vim/commit/84934998806408db3f3ecff7ac4c3980e0c2a96e
Author: rbtnn <naru123456789@gmail.com>
Date: Sat Aug 7 13:26:53 2021 +0200
patch 8.2.3305: Vim9: :finally in skipped block not handled correctly
Problem: Vim9: :finally in skipped block not handled correctly.
Solution: Check whether :finally is in a skipped block. (Naruhiko Nishino,
closes #8724)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 07 Aug 2021 13:30:03 +0200 |
parents | 2063b858cad9 |
children | 9f691e8a74e3 |
line wrap: on
line diff
--- a/src/ex_eval.c +++ b/src/ex_eval.c @@ -2018,7 +2018,8 @@ ex_endtry(exarg_T *eap) { idx = cstack->cs_idx; - if (in_vim9script() + // Check the flags only when not in a skipped block. + if (!skip && in_vim9script() && (cstack->cs_flags[idx] & (CSF_CATCH|CSF_FINALLY)) == 0) { // try/endtry without any catch or finally: give an error and