diff options
| author | Treehugger Robot <treehugger-gerrit@google.com> | 2021-09-22 00:22:40 +0000 |
|---|---|---|
| committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-09-22 00:22:40 +0000 |
| commit | 780c5be8b59744d8660944a2be94aba4cfb8e359 (patch) | |
| tree | 0fa3a19bc265197d0335770fd73e24de0e6d550a /src/com/android | |
| parent | eb01693f0e48c15d45dd548ab05b819ea062e0fa (diff) | |
| parent | 4a59a2d8380ddb305e3d77bc9bfadcc3489e4611 (diff) | |
| download | platform_packages_services_Telephony-780c5be8b59744d8660944a2be94aba4cfb8e359.tar.gz platform_packages_services_Telephony-780c5be8b59744d8660944a2be94aba4cfb8e359.tar.bz2 platform_packages_services_Telephony-780c5be8b59744d8660944a2be94aba4cfb8e359.zip | |
Merge "Refactor PinStorage#storePin to avoid dead lock when unlock PIN." am: 4a59a2d838
Original change: https://android-review.googlesource.com/c/platform/packages/services/Telephony/+/1832798
Change-Id: I8614344ff3557cb61b473b08b8d91b7eff79cd20
Diffstat (limited to 'src/com/android')
| -rwxr-xr-x | src/com/android/phone/PhoneInterfaceManager.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java index c75933b28..f78a0a10f 100755 --- a/src/com/android/phone/PhoneInterfaceManager.java +++ b/src/com/android/phone/PhoneInterfaceManager.java @@ -185,6 +185,7 @@ import com.android.internal.telephony.uicc.IccCardApplicationStatus.AppType; import com.android.internal.telephony.uicc.IccIoResult; import com.android.internal.telephony.uicc.IccRecords; import com.android.internal.telephony.uicc.IccUtils; +import com.android.internal.telephony.uicc.PinStorage; import com.android.internal.telephony.uicc.SIMRecords; import com.android.internal.telephony.uicc.UiccCard; import com.android.internal.telephony.uicc.UiccCardApplication; @@ -1732,8 +1733,9 @@ public class PhoneInterfaceManager extends ITelephony.Stub { // If the operation is successful, update the PIN storage Pair<String, String> passwords = (Pair<String, String>) request.argument; int phoneId = getPhoneFromRequest(request).getPhoneId(); - UiccController.getInstance().getPinStorage() - .storePin(passwords.second, phoneId); + PinStorage pinStorage = UiccController.getInstance().getPinStorage(); + pinStorage.storePin(passwords.second, phoneId, + pinStorage.getIccid(phoneId)); } else { request.result = msg.arg1; } @@ -1757,8 +1759,9 @@ public class PhoneInterfaceManager extends ITelephony.Stub { Pair<Boolean, String> enabled = (Pair<Boolean, String>) request.argument; int phoneId = getPhoneFromRequest(request).getPhoneId(); if (enabled.first) { - UiccController.getInstance().getPinStorage() - .storePin(enabled.second, phoneId); + PinStorage pinStorage = UiccController.getInstance().getPinStorage(); + pinStorage.storePin(enabled.second, phoneId, + pinStorage.getIccid(phoneId)); } else { UiccController.getInstance().getPinStorage().clearPin(phoneId); } @@ -2457,7 +2460,8 @@ public class PhoneInterfaceManager extends ITelephony.Stub { resultArray[1] = mRetryCount; if (mResult == PhoneConstants.PIN_RESULT_SUCCESS && pin.length() > 0) { - UiccController.getInstance().getPinStorage().storePin(pin, mPhoneId); + PinStorage pinStorage = UiccController.getInstance().getPinStorage(); + pinStorage.storePin(pin, mPhoneId, pinStorage.getIccid(mPhoneId)); } return resultArray; |
