diff --git a/crates/ra_ide_api/src/db.rs b/crates/ra_ide_api/src/db.rs index 33d3903bbe..d84a0e7bee 100644 --- a/crates/ra_ide_api/src/db.rs +++ b/crates/ra_ide_api/src/db.rs @@ -31,6 +31,11 @@ impl salsa::Database for RootDatabase { fn on_propagated_panic(&self) -> ! { Canceled::throw() } + fn salsa_event(&self, event: impl Fn() -> salsa::Event) { + if let salsa::EventKind::DidValidateMemoizedValue { .. } = event().kind { + self.check_canceled(); + } + } } impl Default for RootDatabase {