aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/api/private/helpers.c
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2022-01-01 16:41:16 +0100
committerBjörn Linse <bjorn.linse@gmail.com>2022-01-01 16:41:16 +0100
commit9f489f591dbbe57d023f42f64a8a94524823c56f (patch)
tree621051dffeacdd69722cc6658e24eda4735d2031 /src/nvim/api/private/helpers.c
parenta5eadbaf3c6323761f307aa905ff92a75f29c1e2 (diff)
downloadrneovim-9f489f591dbbe57d023f42f64a8a94524823c56f.tar.gz
rneovim-9f489f591dbbe57d023f42f64a8a94524823c56f.tar.bz2
rneovim-9f489f591dbbe57d023f42f64a8a94524823c56f.zip
perf(api): elide luaref copy when setting 'callback' in nvim_set_keymap
Diffstat (limited to 'src/nvim/api/private/helpers.c')
-rw-r--r--src/nvim/api/private/helpers.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nvim/api/private/helpers.c b/src/nvim/api/private/helpers.c
index 0c7ba1845c..4884a44cea 100644
--- a/src/nvim/api/private/helpers.c
+++ b/src/nvim/api/private/helpers.c
@@ -606,7 +606,8 @@ void modify_keymap(Buffer buffer, bool is_unmap, String mode, String lhs, String
}
if (opts != NULL && opts->callback.type == kObjectTypeLuaRef) {
- lua_funcref = api_new_luaref(opts->callback.data.luaref);
+ lua_funcref = opts->callback.data.luaref;
+ opts->callback.data.luaref = LUA_NOREF;
}
MapArguments parsed_args = MAP_ARGUMENTS_INIT;
if (opts) {