Handle IllegalStateExceptions possible from EmergencyNumber APIs.
The emergency number APIs can throw IllegalStateExceptions in rare
cases where Telephony is not available; handling those exceptions to
ensure com.android.phone doesn't crash.
Test: Run telephony unit tests.
Bug: 134100020
Fixes: 152231444
Merged-In: I8b24f943f6146db45dec8ef23e345570e1f1d23e
Change-Id: I8b24f943f6146db45dec8ef23e345570e1f1d23e
(cherry picked from commit de54ec5be90d9ed42442d7a17148d186284466ac)
diff --git a/src/com/android/phone/EmergencyDialer.java b/src/com/android/phone/EmergencyDialer.java
index c6bac02..183742e 100644
--- a/src/com/android/phone/EmergencyDialer.java
+++ b/src/com/android/phone/EmergencyDialer.java
@@ -719,8 +719,12 @@
isEmergencyNumber = true;
phoneToMakeCall = mShortcutViewConfig.getPhoneInfo();
} else {
- isEmergencyNumber = getSystemService(TelephonyManager.class)
- .isEmergencyNumber(mLastNumber);
+ try {
+ isEmergencyNumber = getSystemService(TelephonyManager.class)
+ .isEmergencyNumber(mLastNumber);
+ } catch (IllegalStateException ise) {
+ isEmergencyNumber = false;
+ }
}
if (isEmergencyNumber) {