summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAyush Jain <ayushjain@google.com>2023-11-07 01:47:01 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-07 01:47:01 +0000
commit637e8360b7fe0d834f8a4485eebdce70dde523fc (patch)
tree42efd5b7e5466d4deff845ab4ee31b16976b203b
parent22823fa9471cc06f5c7b45352cd146b84e160e24 (diff)
parentabc23456b22c4014716b7d4af68a0e5f699b1002 (diff)
downloaduwb-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.rs11
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;