aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_lsp_server/src/main_loop.rs
diff options
context:
space:
mode:
authorEmil Lauridsen <[email protected]>2019-12-27 11:43:14 +0000
committerEmil Lauridsen <[email protected]>2019-12-27 11:43:14 +0000
commitc732f215cb31e9f022090b8d0212f6ea9c134c11 (patch)
tree431bee63fe79f253cdc1ec3a435efd78bc45f0e7 /crates/ra_lsp_server/src/main_loop.rs
parented84c85aef859e97ab355e78bf77f435689f25b7 (diff)
Don't finish main cargo watch thread when subprocess finishes.
Diffstat (limited to 'crates/ra_lsp_server/src/main_loop.rs')
-rw-r--r--crates/ra_lsp_server/src/main_loop.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/crates/ra_lsp_server/src/main_loop.rs b/crates/ra_lsp_server/src/main_loop.rs
index e66b8f9eb..af1a487de 100644
--- a/crates/ra_lsp_server/src/main_loop.rs
+++ b/crates/ra_lsp_server/src/main_loop.rs
@@ -184,7 +184,10 @@ pub fn main_loop(
184 Err(RecvError) => Err("vfs died")?, 184 Err(RecvError) => Err("vfs died")?,
185 }, 185 },
186 recv(libdata_receiver) -> data => Event::Lib(data.unwrap()), 186 recv(libdata_receiver) -> data => Event::Lib(data.unwrap()),
187 recv(world_state.check_watcher.task_recv) -> task => Event::CheckWatcher(task.unwrap()) 187 recv(world_state.check_watcher.task_recv) -> task => match task {
188 Ok(task) => Event::CheckWatcher(task),
189 Err(RecvError) => Err("check watcher died")?,
190 }
188 }; 191 };
189 if let Event::Msg(Message::Request(req)) = &event { 192 if let Event::Msg(Message::Request(req)) = &event {
190 if connection.handle_shutdown(&req)? { 193 if connection.handle_shutdown(&req)? {