Mercurial > vim
view src/testdir/test_interrupt.vim @ 19864:8288884fdfe1 v8.2.0488
patch 8.2.0488: Vim9: compiling can break when using a lambda inside :def
Commit: https://github.com/vim/vim/commit/05afceeddc4afbbca60e4e6a729a50d33d4b19f7
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Mar 31 23:32:31 2020 +0200
patch 8.2.0488: Vim9: compiling can break when using a lambda inside :def
Problem: Vim9: Compiling can break when using a lambda inside :def.
Solution: Do not keep a pointer to the dfunc_T for longer time.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 31 Mar 2020 23:45:04 +0200 |
parents | 1febd1aa9930 |
children | 08940efa6b4e |
line wrap: on
line source
" Test behavior of interrupt() let s:bufwritepre_called = 0 let s:bufwritepost_called = 0 func s:bufwritepre() let s:bufwritepre_called = 1 call interrupt() endfunction func s:bufwritepost() let s:bufwritepost_called = 1 endfunction func Test_interrupt() new Xfile let n = 0 try au BufWritePre Xfile call s:bufwritepre() au BufWritePost Xfile call s:bufwritepost() w! catch /^Vim:Interrupt$/ endtry call assert_equal(1, s:bufwritepre_called) call assert_equal(0, s:bufwritepost_called) call assert_equal(0, filereadable('Xfile')) endfunc