mirror of
https://github.com/neovim/neovim.git
synced 2025-10-04 00:46:30 +00:00
refactor(lua): use Arena when converting from lua stack to API args
and for return value of nlua_exec/nlua_call_ref, as this uses the same family of functions. NB: the handling of luaref:s is a bit of a mess. add api_luarefs_free_XX functions as a stop-gap as refactoring luarefs is a can of worms for another PR:s. as a minor feature/bug-fix, nvim_buf_call and nvim_win_call now preserves arbitrary return values.
This commit is contained in:
@@ -6143,8 +6143,8 @@ bool callback_call(Callback *const callback, const int argcount_in, typval_T *co
|
||||
break;
|
||||
|
||||
case kCallbackLua:
|
||||
rv = nlua_call_ref(callback->data.luaref, NULL, args, false, NULL);
|
||||
return (rv.type == kObjectTypeBoolean && rv.data.boolean == true);
|
||||
rv = nlua_call_ref(callback->data.luaref, NULL, args, kRetNilBool, NULL, NULL);
|
||||
return LUARET_TRUTHY(rv);
|
||||
|
||||
case kCallbackNone:
|
||||
return false;
|
||||
|
Reference in New Issue
Block a user