From 680e6f35bcd3f23b9f98e05a3c193405bb69c510 Mon Sep 17 00:00:00 2001 From: Alex Kirszenberg Date: Mon, 10 Mar 2025 10:43:28 +0100 Subject: [PATCH] Fix diagnostics being cleared right after being received --- src/tools/rust-analyzer/crates/rust-analyzer/src/flycheck.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tools/rust-analyzer/crates/rust-analyzer/src/flycheck.rs b/src/tools/rust-analyzer/crates/rust-analyzer/src/flycheck.rs index 7529e7c188f8..dd5103258069 100644 --- a/src/tools/rust-analyzer/crates/rust-analyzer/src/flycheck.rs +++ b/src/tools/rust-analyzer/crates/rust-analyzer/src/flycheck.rs @@ -401,7 +401,9 @@ impl FlycheckActor { package_id = package_id.as_ref().map(|it| &it.repr), "diagnostic received" ); - self.diagnostics_received = DiagnosticsReceived::Yes; + if self.diagnostics_received == DiagnosticsReceived::No { + self.diagnostics_received = DiagnosticsReceived::Yes; + } if let Some(package_id) = &package_id { if self.diagnostics_cleared_for.insert(package_id.clone()) { tracing::trace!(