From 7c77e2b47cee8bcda3bbe87af8979b6880356acd Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Mon, 17 Apr 2023 03:19:40 +0200 Subject: Improve websocket disconnect handling --- src/bin/rbw-agent/notifications.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bin/rbw-agent/notifications.rs b/src/bin/rbw-agent/notifications.rs index ab24c42..334466f 100644 --- a/src/bin/rbw-agent/notifications.rs +++ b/src/bin/rbw-agent/notifications.rs @@ -82,7 +82,7 @@ impl NotificationsHandler { } pub fn is_connected(&self) -> bool { - self.write.is_some() + self.write.is_some() && self.read_handle.is_some() && !self.read_handle.as_ref().unwrap().is_finished() } pub async fn disconnect(&mut self) -> Result<(), Box> { @@ -92,6 +92,8 @@ impl NotificationsHandler { write.close().await?; self.read_handle.take().unwrap().await?; } + self.write = None; + self.read_handle = None; Ok(()) } -- cgit v1.2.3-54-g00ecf