diff options
Diffstat (limited to 'src/java/com/android/internal/telephony/uicc/UiccPkcs15.java')
-rw-r--r-- | src/java/com/android/internal/telephony/uicc/UiccPkcs15.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/java/com/android/internal/telephony/uicc/UiccPkcs15.java b/src/java/com/android/internal/telephony/uicc/UiccPkcs15.java index be045c4c92..680af46ccc 100644 --- a/src/java/com/android/internal/telephony/uicc/UiccPkcs15.java +++ b/src/java/com/android/internal/telephony/uicc/UiccPkcs15.java @@ -106,14 +106,21 @@ public class UiccPkcs15 extends Handler { mCallback.sendToTarget(); return; } - + IccIoResult response; switch (msg.what) { case EVENT_SELECT_FILE_DONE: - readBinary(); + response = (IccIoResult) ar.result; + if (response.getException() == null) { + readBinary(); + } else { + log("Select file error : " + response.getException()); + AsyncResult.forMessage(mCallback, null, response.getException()); + mCallback.sendToTarget(); + } break; case EVENT_READ_BINARY_DONE: - IccIoResult response = (IccIoResult) ar.result; + response = (IccIoResult) ar.result; String result = IccUtils.bytesToHexString(response.payload) .toUpperCase(Locale.US); log("IccIoResult: " + response + " payload: " + result); |