aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--crates/ra_cargo_watch/src/lib.rs3
-rw-r--r--crates/ra_lsp_server/src/main_loop.rs5
2 files changed, 5 insertions, 3 deletions
diff --git a/crates/ra_cargo_watch/src/lib.rs b/crates/ra_cargo_watch/src/lib.rs
index 11b624abf..d683d43d2 100644
--- a/crates/ra_cargo_watch/src/lib.rs
+++ b/crates/ra_cargo_watch/src/lib.rs
@@ -193,8 +193,7 @@ impl CheckWatcherState {
193 recv(self.watcher.message_recv) -> msg => match msg { 193 recv(self.watcher.message_recv) -> msg => match msg {
194 Ok(msg) => self.handle_message(msg, task_send), 194 Ok(msg) => self.handle_message(msg, task_send),
195 Err(RecvError) => { 195 Err(RecvError) => {
196 // Task channel has closed, so shut down 196 // Watcher finished, do nothing.
197 break;
198 }, 197 },
199 } 198 }
200 }; 199 };
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)? {