summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-03-04 22:13:35 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-03-04 22:13:35 +0000
commit786e57a836470100294542b75bcdb4a69f408345 (patch)
tree26d837d20e1a11d2121230fdea878f45dd193cec
parent0348a9532e7f2cc0759254dce01c10ec55ff4c8e (diff)
parentfcf2f8340b75bb80a62c2af488f86dfb6d447195 (diff)
downloadUwb-simpleperf-release.tar.gz
Snap for 11526323 from fcf2f8340b75bb80a62c2af488f86dfb6d447195 to simpleperf-releasesimpleperf-release
Change-Id: I2fff8a9a7c91ff8e789e90b5529dc804d89728b5
-rw-r--r--service/java/com/android/server/uwb/UwbSessionManager.java15
-rw-r--r--service/tests/src/com/android/server/uwb/UwbSessionManagerTest.java4
-rw-r--r--service/uci/jni/src/helper.rs5
3 files changed, 11 insertions, 13 deletions
diff --git a/service/java/com/android/server/uwb/UwbSessionManager.java b/service/java/com/android/server/uwb/UwbSessionManager.java
index 06ed3e07..eb3910d1 100644
--- a/service/java/com/android/server/uwb/UwbSessionManager.java
+++ b/service/java/com/android/server/uwb/UwbSessionManager.java
@@ -479,21 +479,18 @@ public class UwbSessionManager implements INativeUwbManager.SessionNotification,
int prevState = uwbSession.getSessionState();
setCurrentSessionState((int) sessionId, state);
- // Store the reasonCode before notifying on the waitObj.
- synchronized (uwbSession.getWaitObj()) {
- uwbSession.setLastSessionStatusNtfReasonCode(reasonCode);
- }
-
if ((uwbSession.getOperationType() == SESSION_ON_DEINIT
&& state == UwbUciConstants.UWB_SESSION_STATE_IDLE)
|| (uwbSession.getOperationType() == SESSION_STOP_RANGING
&& state == UwbUciConstants.UWB_SESSION_STATE_IDLE
&& reasonCode != REASON_STATE_CHANGE_WITH_SESSION_MANAGEMENT_COMMANDS)) {
Log.d(TAG, "Session status NTF is received due to in-band session state change");
- } else {
- synchronized (uwbSession.getWaitObj()) {
- uwbSession.getWaitObj().blockingNotify();
- }
+ }
+
+ // Store the reasonCode before notifying on the waitObj.
+ synchronized (uwbSession.getWaitObj()) {
+ uwbSession.setLastSessionStatusNtfReasonCode(reasonCode);
+ uwbSession.getWaitObj().blockingNotify();
}
//TODO : process only error handling in this switch function, b/218921154
diff --git a/service/tests/src/com/android/server/uwb/UwbSessionManagerTest.java b/service/tests/src/com/android/server/uwb/UwbSessionManagerTest.java
index 54066bf4..a1ef9197 100644
--- a/service/tests/src/com/android/server/uwb/UwbSessionManagerTest.java
+++ b/service/tests/src/com/android/server/uwb/UwbSessionManagerTest.java
@@ -902,7 +902,7 @@ public class UwbSessionManagerTest {
UwbUciConstants.UWB_SESSION_STATE_IDLE,
UwbUciConstants.REASON_MAX_RANGING_ROUND_RETRY_COUNT_REACHED);
- verify(mockUwbSession, times(3)).getWaitObj();
+ verify(mockUwbSession, times(2)).getWaitObj();
verify(mockUwbSession).setSessionState(eq(UwbUciConstants.UWB_SESSION_STATE_IDLE));
verify(mUwbSessionNotificationManager).onRangingStoppedWithUciReasonCode(
eq(mockUwbSession),
@@ -922,7 +922,7 @@ public class UwbSessionManagerTest {
UwbUciConstants.UWB_SESSION_STATE_IDLE,
UwbUciConstants.REASON_STATE_CHANGE_WITH_SESSION_MANAGEMENT_COMMANDS);
- verify(mockUwbSession, times(3)).getWaitObj();
+ verify(mockUwbSession, times(2)).getWaitObj();
verify(mockUwbSession).setSessionState(eq(UwbUciConstants.UWB_SESSION_STATE_IDLE));
verify(mUwbSessionNotificationManager, never()).onRangingStoppedWithUciReasonCode(
any(), anyInt());
diff --git a/service/uci/jni/src/helper.rs b/service/uci/jni/src/helper.rs
index 6e092680..829022aa 100644
--- a/service/uci/jni/src/helper.rs
+++ b/service/uci/jni/src/helper.rs
@@ -37,10 +37,11 @@ pub(crate) fn byte_result_helper<T>(result: Result<T>, error_msg: &str) -> jbyte
/// helper function to convert Result to StatusCode
fn result_to_status_code<T>(result: Result<T>, error_msg: &str) -> StatusCode {
- match result.map_err(|e| {
+ let result = result.map_err(|e| {
error!("{} failed with {:?}", error_msg, &e);
e
- }) {
+ });
+ match result {
Ok(_) => StatusCode::UciStatusOk,
Err(Error::BadParameters) => StatusCode::UciStatusInvalidParam,
Err(Error::MaxSessionsExceeded) => StatusCode::UciStatusMaxSessionsExceeded,