summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmit Mahajan <amitmahajan@google.com>2015-11-09 13:20:21 -0800
committerAmit Mahajan <amitmahajan@google.com>2015-11-09 13:20:21 -0800
commitcecbabcec6edf19ad1a095325fb0d9c48375de69 (patch)
tree746132bdd8ae169add10c9bbf98a680afe23208f
parentd4091e0fbb8cd6f549a431ae471749a2ad86008c (diff)
downloadandroid_packages_providers_TelephonyProvider-cecbabcec6edf19ad1a095325fb0d9c48375de69.tar.gz
android_packages_providers_TelephonyProvider-cecbabcec6edf19ad1a095325fb0d9c48375de69.tar.bz2
android_packages_providers_TelephonyProvider-cecbabcec6edf19ad1a095325fb0d9c48375de69.zip
Try-catch for deletePreferredApnId()
Devices pre-dating lollipop have pref apn stored in shared pref without sub id. That shared pref was removed in M, but devices skipping M will run into this crash on trying to extract sub id from the pref apn key. Bug: 25587618 Change-Id: I5a7727acd390fe861a8bb71a0a6eab8246791c59
-rw-r--r--src/com/android/providers/telephony/TelephonyProvider.java12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/com/android/providers/telephony/TelephonyProvider.java b/src/com/android/providers/telephony/TelephonyProvider.java
index bf7dc74..bf77aec 100644
--- a/src/com/android/providers/telephony/TelephonyProvider.java
+++ b/src/com/android/providers/telephony/TelephonyProvider.java
@@ -1453,10 +1453,14 @@ public class TelephonyProvider extends ContentProvider
Map<String, ?> allPrefApnId = sp.getAll();
for (String key : allPrefApnId.keySet()) {
// extract subId from key by removing COLUMN_APN_ID
- int subId = Integer.parseInt(key.replace(COLUMN_APN_ID, ""));
- long apnId = getPreferredApnId(subId, false);
- if (apnId != INVALID_APN_ID) {
- setPreferredApn(apnId, subId);
+ try {
+ int subId = Integer.parseInt(key.replace(COLUMN_APN_ID, ""));
+ long apnId = getPreferredApnId(subId, false);
+ if (apnId != INVALID_APN_ID) {
+ setPreferredApn(apnId, subId);
+ }
+ } catch (Exception e) {
+ loge("Skipping over key " + key + " due to exception " + e);
}
}
SharedPreferences.Editor editor = sp.edit();