diff options
Diffstat (limited to 'lua/lspconfig/manager.lua')
| -rw-r--r-- | lua/lspconfig/manager.lua | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lua/lspconfig/manager.lua b/lua/lspconfig/manager.lua index 5d260b41..0c7bc823 100644 --- a/lua/lspconfig/manager.lua +++ b/lua/lspconfig/manager.lua @@ -203,7 +203,8 @@ function M:add(root_dir, single_file, bufnr) local new_config = self.make_config(root_dir) local client = self:_get_client_from_cache(root_dir, new_config.name) - if not client then + ---If single_file_mode is false then root_dir should match client otherwise start a new client + if not client or (not single_file and client.config.root_dir and client.config.root_dir ~= root_dir) then return self:_start_new_client(bufnr, new_config, root_dir, single_file) end |
