diff options
author | Hirokazu Hata <h.hata.ai.t@gmail.com> | 2020-02-13 11:55:43 +0900 |
---|---|---|
committer | Hirokazu Hata <h.hata.ai.t@gmail.com> | 2020-02-13 11:55:43 +0900 |
commit | 417fc6ccf78801aef79a8731c5a85db6b12cd407 (patch) | |
tree | 99a92da313011aa0599fc7d9286e95394587c6ea /runtime/lua/vim/shared.lua | |
parent | 68de6b17b8660adfeda93e46cec6ee6ebc7ebcf5 (diff) | |
download | rneovim-417fc6ccf78801aef79a8731c5a85db6b12cd407.tar.gz rneovim-417fc6ccf78801aef79a8731c5a85db6b12cd407.tar.bz2 rneovim-417fc6ccf78801aef79a8731c5a85db6b12cd407.zip |
lua: vim.deepcopy uses empty_dict() instead of {} for empty_dict()
fix: https://github.com/neovim/nvim-lsp/issues/94
Diffstat (limited to 'runtime/lua/vim/shared.lua')
-rw-r--r-- | runtime/lua/vim/shared.lua | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/lua/vim/shared.lua b/runtime/lua/vim/shared.lua index ea1117a906..36df24d0c1 100644 --- a/runtime/lua/vim/shared.lua +++ b/runtime/lua/vim/shared.lua @@ -20,6 +20,11 @@ vim.deepcopy = (function() local deepcopy_funcs = { table = function(orig) local copy = {} + + if getmetatable(orig) == vim._empty_dict_mt then + copy = vim.empty_dict() + end + for k, v in pairs(orig) do copy[vim.deepcopy(k)] = vim.deepcopy(v) end |