@@ -85,6 +85,10 @@ function! lsp#get_server_info(server_name) abort
85
85
return s: servers [a: server_name ][' server_info' ]
86
86
endfunction
87
87
88
+ function ! lsp#get_server_root_uri (server_name) abort
89
+ return get (s: servers [a: server_name ][' server_info' ], ' _root_uri_resolved' , ' ' )
90
+ endfunction
91
+
88
92
function ! lsp#get_server_capabilities (server_name) abort
89
93
let l: server = s: servers [a: server_name ]
90
94
return has_key (l: server , ' init_result' ) ? l: server [' init_result' ][' result' ][' capabilities' ] : {}
@@ -514,18 +518,13 @@ function! s:ensure_init(buf, server_name, cb) abort
514
518
" server has already started, but not initialized
515
519
516
520
let l: server_info = l: server [' server_info' ]
517
- if has_key (l: server_info , ' root_uri' )
518
- let l: root_uri = l: server_info [' root_uri' ](l: server_info )
519
- else
520
- let l: root_uri = lsp#utils#get_default_root_uri ()
521
- endif
522
-
521
+ let l: root_uri = has_key (l: server_info , ' root_uri' ) ? l: server_info [' root_uri' ](l: server_info ) : ' '
523
522
if empty (l: root_uri )
524
523
let l: msg = s: new_rpc_error (' ignore initialization lsp server due to empty root_uri' , { ' server_name' : a: server_name , ' lsp_id' : l: server [' lsp_id' ] })
525
524
call lsp#log (l: msg )
526
- call a: cb (l: msg )
527
- return
525
+ let l: root_uri = lsp#utils#get_default_root_uri ()
528
526
endif
527
+ let l: server [' server_info' ][' _root_uri_resolved' ] = l: root_uri
529
528
530
529
if has_key (l: server_info , ' capabilities' )
531
530
let l: capabilities = l: server_info [' capabilities' ]
0 commit comments