diff --git a/crates/server/src/rpc/store.rs b/crates/server/src/rpc/store.rs index e6c4429b6960a749175f4ee9fac25a792e715fbc..3d68836b572c54c2e2be278afc72bcc7bca4a472 100644 --- a/crates/server/src/rpc/store.rs +++ b/crates/server/src/rpc/store.rs @@ -296,7 +296,16 @@ impl Store { } } - Ok(e.remove()) + let project = e.remove(); + if let Some(share) = &project.share { + for guest_connection in share.guests.keys() { + if let Some(connection) = self.connections.get_mut(&guest_connection) { + connection.projects.remove(&project_id); + } + } + } + + Ok(project) } else { Err(anyhow!("no such project"))? }