File tree Expand file tree Collapse file tree 1 file changed +10
-0
lines changed
crates/ra_cargo_watch/src Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -95,6 +95,9 @@ impl CheckWatcherThread {
9595 }
9696
9797 fn run ( & mut self , task_send : & Sender < CheckTask > , cmd_recv : & Receiver < CheckCommand > ) {
98+ // If we rerun the thread, we need to discard the previous check results first
99+ self . clean_previous_results ( task_send) ;
100+
98101 loop {
99102 select ! {
100103 recv( & cmd_recv) -> cmd => match cmd {
@@ -127,6 +130,13 @@ impl CheckWatcherThread {
127130 }
128131 }
129132
133+ fn clean_previous_results ( & self , task_send : & Sender < CheckTask > ) {
134+ task_send. send ( CheckTask :: ClearDiagnostics ) . unwrap ( ) ;
135+ task_send
136+ . send ( CheckTask :: Status ( WorkDoneProgress :: End ( WorkDoneProgressEnd { message : None } ) ) )
137+ . unwrap ( ) ;
138+ }
139+
130140 fn should_recheck ( & mut self ) -> bool {
131141 if let Some ( _last_update_req) = & self . last_update_req {
132142 // We currently only request an update on save, as we need up to
You can’t perform that action at this time.
0 commit comments