aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/shared.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-05-01 21:08:05 +0200
committerGitHub <noreply@github.com>2022-05-01 21:08:05 +0200
commit069da468d5d2af01279a121473aef09c87b163aa (patch)
tree7b80d6fe78e44ed420e8a0be1c28158f96083274 /runtime/lua/vim/shared.lua
parent65b4bf055f58eb622f59188c3bace2519cb777b1 (diff)
downloadrneovim-069da468d5d2af01279a121473aef09c87b163aa.tar.gz
rneovim-069da468d5d2af01279a121473aef09c87b163aa.tar.bz2
rneovim-069da468d5d2af01279a121473aef09c87b163aa.zip
fix(shared): avoid indexing unindexable values in vim.tbl_get() (#18337)
Diffstat (limited to 'runtime/lua/vim/shared.lua')
-rw-r--r--runtime/lua/vim/shared.lua5
1 files changed, 4 insertions, 1 deletions
diff --git a/runtime/lua/vim/shared.lua b/runtime/lua/vim/shared.lua
index f0dc34608c..172fac3a88 100644
--- a/runtime/lua/vim/shared.lua
+++ b/runtime/lua/vim/shared.lua
@@ -365,7 +365,10 @@ function vim.tbl_get(o, ...)
if #keys == 0 then
return
end
- for _, k in ipairs(keys) do
+ for i, k in ipairs(keys) do
+ if type(o[k]) ~= 'table' and next(keys, i) then
+ return nil
+ end
o = o[k]
if o == nil then
return