commit adf7c98d607b362dd3b25d6d0bee0d1212c472dd
parent 45e319ade6392aa7ec2cc7e639d0821efd7f2444
Author: Gregory Anders <greg@gpanders.com>
Date: Sun, 27 Oct 2024 11:35:45 -0500
fix(lsp): compare URI instead of workspace folder name (#30962)
The workspace folder name is meant to be a human-readable name which is
only used in the UI. Comparing the name against root_dir is thus not
a valid comparison. Instead, we should compare the workspace folder's
URI against the root dir URI.
Diffstat:
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/runtime/lua/vim/lsp.lua b/runtime/lua/vim/lsp.lua
@@ -189,9 +189,10 @@ local function reuse_client_default(client, config)
end
if config.root_dir then
+ local root = vim.uri_from_fname(config.root_dir)
for _, dir in ipairs(client.workspace_folders or {}) do
-- note: do not need to check client.root_dir since that should be client.workspace_folders[1]
- if config.root_dir == dir.name then
+ if root == dir.uri then
return true
end
end