From b929d05c74702f44d2d59eede5e3379c6b725b4f Mon Sep 17 00:00:00 2001 From: Edwin Cheng Date: Tue, 31 Mar 2020 21:25:52 +0800 Subject: Add drop for process --- crates/ra_proc_macro/src/process.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'crates') diff --git a/crates/ra_proc_macro/src/process.rs b/crates/ra_proc_macro/src/process.rs index 3e8dd4314..07dc1bf9e 100644 --- a/crates/ra_proc_macro/src/process.rs +++ b/crates/ra_proc_macro/src/process.rs @@ -45,6 +45,12 @@ struct Process { child: Child, } +impl Drop for Process { + fn drop(&mut self) { + let _ = self.child.kill(); + } +} + impl Process { fn run(process_path: &Path) -> Result { let child = Command::new(process_path.clone()) @@ -186,8 +192,6 @@ fn client_loop(task_rx: Receiver, mut process: Process) { result_tx.send(res).unwrap(); } } - - let _ = process.child.kill(); } fn send_request( -- cgit v1.2.3