diff options
author | Ayush Jain <ayushjain@google.com> | 2023-11-07 01:47:01 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-11-07 01:47:01 +0000 |
commit | 637e8360b7fe0d834f8a4485eebdce70dde523fc (patch) | |
tree | 42efd5b7e5466d4deff845ab4ee31b16976b203b | |
parent | 22823fa9471cc06f5c7b45352cd146b84e160e24 (diff) | |
parent | abc23456b22c4014716b7d4af68a0e5f699b1002 (diff) | |
download | uwb-637e8360b7fe0d834f8a4485eebdce70dde523fc.tar.gz |
Merge "Clear the session map while closing UWB hal" into main am: 18fd6b7318 am: c5cca02de3 am: abc23456b2
Original change: https://android-review.googlesource.com/c/platform/external/uwb/+/2810513
Change-Id: I0a583e1df0a08d5ca7bf08049a63acaf0f27254f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | src/rust/uwb_core/src/uci/uci_manager.rs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/rust/uwb_core/src/uci/uci_manager.rs b/src/rust/uwb_core/src/uci/uci_manager.rs index d074085..6609c0e 100644 --- a/src/rust/uwb_core/src/uci/uci_manager.rs +++ b/src/rust/uwb_core/src/uci/uci_manager.rs @@ -787,7 +787,7 @@ impl<T: UciHal, U: UciLogger> UciManagerActor<T, U> { if self.is_hal_opened { debug!("The HAL is still opened when exit, close the HAL"); let _ = self.hal.close().await; - self.on_hal_closed(); + self.on_hal_closed().await; } } @@ -906,7 +906,7 @@ impl<T: UciHal, U: UciLogger> UciManagerActor<T, U> { debug!("Force closing the UCI HAL"); let close_result = self.hal.close().await; self.logger.log_hal_close(&close_result); - self.on_hal_closed(); + self.on_hal_closed().await; let _ = result_sender.send(Ok(UciResponse::CloseHal)); } else { if !self.is_hal_opened { @@ -918,7 +918,7 @@ impl<T: UciHal, U: UciLogger> UciManagerActor<T, U> { let result = self.hal.close().await; self.logger.log_hal_close(&result); if result.is_ok() { - self.on_hal_closed(); + self.on_hal_closed().await; } let _ = result_sender.send(result.map(|_| UciResponse::CloseHal)); } @@ -1136,7 +1136,7 @@ impl<T: UciHal, U: UciLogger> UciManagerActor<T, U> { } None => { warn!("UciHal dropped the packet_sender unexpectedly."); - self.on_hal_closed(); + self.on_hal_closed().await; return; } }; @@ -1418,7 +1418,8 @@ impl<T: UciHal, U: UciLogger> UciManagerActor<T, U> { self.packet_receiver = packet_receiver; } - fn on_hal_closed(&mut self) { + async fn on_hal_closed(&mut self) { + self.session_id_to_token_map.lock().await.clear(); self.is_hal_opened = false; self.packet_receiver = mpsc::unbounded_channel().1; self.last_raw_cmd = None; |