don't deadlock on shutdown

Specifically, when we tear down IO threads, we should take care to
dispose connection.

closes #1775
This commit is contained in:
Aleksey Kladov 2019-09-06 20:58:21 +03:00
parent 1acd9d5540
commit 219287a14c
3 changed files with 4 additions and 4 deletions

View file

@ -66,7 +66,7 @@ fn run_server() -> Result<()> {
workspace_roots,
initialize_params.capabilities,
server_config,
&connection,
connection,
)?;
log::info!("shutting down IO...");

View file

@ -52,7 +52,7 @@ pub fn main_loop(
ws_roots: Vec<PathBuf>,
client_caps: ClientCapabilities,
config: ServerConfig,
connection: &Connection,
connection: Connection,
) -> Result<()> {
log::info!("server_config: {:#?}", config);
@ -174,7 +174,7 @@ pub fn main_loop(
&pool,
&task_sender,
&libdata_sender,
connection,
&connection,
&mut world_state,
&mut loop_state,
event,

View file

@ -118,7 +118,7 @@ impl Server {
experimental: None,
},
ServerConfig { with_sysroot, ..ServerConfig::default() },
&connection,
connection,
)
.unwrap()
})