mirror of
https://github.com/vim/vim.git
synced 2025-10-27 09:24:23 -04:00
patch 8.2.4782: accessing freed memory
Problem: Accessing freed memory.
Solution: Clear evalarg after checking for trailing characters.
(issue #10218)
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
" Test for lambda and closure
|
||||
|
||||
source check.vim
|
||||
import './vim9.vim' as v9
|
||||
|
||||
func Test_lambda_feature()
|
||||
call assert_equal(1, has('lambda'))
|
||||
@@ -54,6 +55,21 @@ func Test_lambda_with_timer()
|
||||
call assert_true(s:n > m)
|
||||
endfunc
|
||||
|
||||
func Test_lambda_vim9cmd_linebreak()
|
||||
CheckFeature timers
|
||||
|
||||
let lines =<< trim END
|
||||
vim9cmd call timer_start(10, (x) => {
|
||||
# comment
|
||||
g:result = 'done'
|
||||
})
|
||||
END
|
||||
call v9.CheckScriptSuccess(lines)
|
||||
sleep 50m
|
||||
call assert_equal('done', g:result)
|
||||
unlet g:result
|
||||
endfunc
|
||||
|
||||
func Test_lambda_with_partial()
|
||||
let l:Cb = function({... -> ['zero', a:1, a:2, a:3]}, ['one', 'two'])
|
||||
call assert_equal(['zero', 'one', 'two', 'three'], l:Cb('three'))
|
||||
|
||||
Reference in New Issue
Block a user