1
0
forked from aniani/vim

patch 9.0.1719: if_lua: crash for for Lua functions invoked via Vim callbacks

Problem: if_lua: crash for Lua functions invoked via Vim callbacks
Solution: Use Lua registry rather than upvalues for udata cache

closes: #12785

Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Jesse Pavel <jpavel@alum.mit.edu>
This commit is contained in:
Jesse Pavel
2023-08-13 22:05:45 -04:00
committed by Christian Brabandt
parent e98fb643ec
commit 8a35033782
3 changed files with 86 additions and 53 deletions

View File

@@ -1232,4 +1232,11 @@ func Test_lua_debug()
call StopVimInTerminal(buf)
endfunc
" Test for a crash when a Lua funcref is invoked with parameters from Vim
func Test_lua_funcref_with_params()
let Lua_funcref = luaeval('function(d) local s = "in Lua callback" end')
call Lua_funcref({'a' : 'b'})
call assert_true(v:true)
endfunc
" vim: shiftwidth=2 sts=2 expandtab