diff options
| author | Sreehari Vaddi <cshvadd@codeaurora.org> | 2014-11-19 21:44:15 +0530 |
|---|---|---|
| committer | Arne Coucheron <arco68@gmail.com> | 2014-12-13 01:45:53 +0100 |
| commit | 19df5cd071e0be7d7620514c4a775cc37d95e61d (patch) | |
| tree | 0fb03c283064bac0414a5b05fe47120824151156 | |
| parent | e08a1e3b8474bb5911a04137ccfbe8bd7791d9bb (diff) | |
| download | android_packages_apps_InCallUI-19df5cd071e0be7d7620514c4a775cc37d95e61d.tar.gz android_packages_apps_InCallUI-19df5cd071e0be7d7620514c4a775cc37d95e61d.tar.bz2 android_packages_apps_InCallUI-19df5cd071e0be7d7620514c4a775cc37d95e61d.zip | |
Handle NumberFormatException gracefully
Handle NumberFormatException at relevant places
when subId is parsed as Long.
Change-Id: I189704113d2df64c40465d4d2e2e49f2a2534bfe
| -rw-r--r-- | src/com/android/incallui/Call.java | 12 | ||||
| -rw-r--r-- | src/com/android/incallui/CallList.java | 11 |
2 files changed, 14 insertions, 9 deletions
diff --git a/src/com/android/incallui/Call.java b/src/com/android/incallui/Call.java index cabdec29..4a337296 100644 --- a/src/com/android/incallui/Call.java +++ b/src/com/android/incallui/Call.java @@ -419,12 +419,14 @@ public final class Call { public long getSubId() { PhoneAccountHandle ph = getAccountHandle(); if (ph != null) { - if (ph.getId() != null && !ph.getId().toLowerCase().contains("sip") - && !ph.getId().equals("E")) { - return Long.parseLong(getAccountHandle().getId()); - } else { - return SubscriptionManager.getDefaultVoiceSubId(); + try { + if (ph.getId() != null ) { + return Long.parseLong(getAccountHandle().getId()); + } + } catch (NumberFormatException e) { + Log.w(this,"sub Id is not a number " + e); } + return SubscriptionManager.getDefaultVoiceSubId(); } else { return SubscriptionManager.INVALID_SUB_ID; } diff --git a/src/com/android/incallui/CallList.java b/src/com/android/incallui/CallList.java index 61078e29..6508bcb9 100644 --- a/src/com/android/incallui/CallList.java +++ b/src/com/android/incallui/CallList.java @@ -679,10 +679,13 @@ public class CallList implements InCallPhoneListener { public boolean hasAnyLiveCall(long subId) { for (Call call : mCallById.values()) { PhoneAccountHandle ph = call.getAccountHandle(); - if (!isCallDead(call) && ph != null && (!ph.getId().equals("E")) - && (Long.parseLong(ph.getId()) == subId)) { - Log.i(this, "hasAnyLiveCall sub = " + subId); - return true; + try { + if (!isCallDead(call) && ph != null && (Long.parseLong(ph.getId()) == subId)) { + Log.i(this, "hasAnyLiveCall sub = " + subId); + return true; + } + } catch (NumberFormatException e) { + Log.w(this,"Sub Id is not a number " + e); } } Log.i(this, "no active call "); |
