Mercurial > vim
diff src/testdir/test_lua.vim @ 16028:8ad2cda3757d v8.1.1019
patch 8.1.1019: Lua: may garbage collect function reference in use
commit https://github.com/vim/vim/commit/4eefe47ea4b6bf958617e924f52bc7a409cfb0ed
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Mar 19 21:59:19 2019 +0100
patch 8.1.1019: Lua: may garbage collect function reference in use
Problem: Lua: may garbage collect function reference in use.
Solution: Keep the function name instead of the typeval. Make luaV_setref()
handle funcref objects. (Ozaki Kiichi, closes #4127)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 19 Mar 2019 22:00:07 +0100 |
parents | 725255793949 |
children | a2f0e93a5857 |
line wrap: on
line diff
--- a/src/testdir/test_lua.vim +++ b/src/testdir/test_lua.vim @@ -449,6 +449,7 @@ func Test_funcref() lua d.len = vim.funcref"Mylen" -- assign d as 'self' lua res = (d.len() == vim.funcref"len"(vim.eval"l")) and "OK" or "FAIL" call assert_equal("OK", luaeval('res')) + call assert_equal(function('Mylen', {'data': l, 'len': function('Mylen')}), mydict.len) lua i1, i2, msg, d, res = nil endfunc