diff src/testdir/test_lua.vim @ 32807:0582b3b40319 v9.0.1719

patch 9.0.1719: if_lua: crash for for Lua functions invoked via Vim callbacks Commit: https://github.com/vim/vim/commit/8a35033782de4e1f43fba15543fc8fb458944194 Author: Jesse Pavel <jpavel@alum.mit.edu> Date: Sun Aug 13 22:05:45 2023 -0400 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>
author Christian Brabandt <cb@256bit.org>
date Tue, 15 Aug 2023 23:30:03 +0200
parents 94f4a488412e
children 441ceb1c45c1
line wrap: on
line diff
--- a/src/testdir/test_lua.vim
+++ b/src/testdir/test_lua.vim
@@ -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