aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/lsp/handlers.lua
diff options
context:
space:
mode:
authorMathias Fußenegger <mfussenegger@users.noreply.github.com>2021-01-18 19:33:10 +0100
committerGitHub <noreply@github.com>2021-01-18 19:33:10 +0100
commit3f63100d5bc3bcaddccef4e5f95af9ea5cff1cc3 (patch)
tree25d275035f01286e6c191c95d8ce8856b12b1d88 /runtime/lua/vim/lsp/handlers.lua
parent51936126d3281231ec8f971ebefd82a95f8dc0e6 (diff)
downloadrneovim-3f63100d5bc3bcaddccef4e5f95af9ea5cff1cc3.tar.gz
rneovim-3f63100d5bc3bcaddccef4e5f95af9ea5cff1cc3.tar.bz2
rneovim-3f63100d5bc3bcaddccef4e5f95af9ea5cff1cc3.zip
LSP: Fix nil settings handling in workspace/configuration (#13708)
The `workspace/configuration` handler could fail with the following error if `config.settings` is nil: runtime/lua/vim/lsp/util.lua:1432: attempt to index local 'settings' (a nil value)" This ensures that `config.settings` is always initialized to an empty table.
Diffstat (limited to 'runtime/lua/vim/lsp/handlers.lua')
-rw-r--r--runtime/lua/vim/lsp/handlers.lua1
1 files changed, 1 insertions, 0 deletions
diff --git a/runtime/lua/vim/lsp/handlers.lua b/runtime/lua/vim/lsp/handlers.lua
index b4a1eff316..7eac3febd9 100644
--- a/runtime/lua/vim/lsp/handlers.lua
+++ b/runtime/lua/vim/lsp/handlers.lua
@@ -162,6 +162,7 @@ M['workspace/configuration'] = function(err, _, params, client_id)
local client = vim.lsp.get_client_by_id(client_id)
if not client then
err_message("LSP[id=", client_id, "] client has shut down after sending the message")
+ return
end
if err then error(vim.inspect(err)) end
if not params.items then