diff options
| author | 2022-10-03 20:03:18 +0000 | |
|---|---|---|
| committer | 2022-10-03 20:03:18 +0000 | |
| commit | 10b858c39fc86568c656532462941af590c2a9e7 (patch) | |
| tree | 47b3604a8238742b41aa949d3f69110a872936f2 | |
| parent | 33e1b74e88d2a06947d870f67cf021998df9d637 (diff) | |
| parent | cf445af0af9c16545ef1ff5a44ae365c7f6c080f (diff) | |
Merge "Catch exception from TelephonyManager#isEmergencyNumber to avoid crash"
| -rw-r--r-- | services/core/java/com/android/server/location/injector/SystemEmergencyHelper.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/location/injector/SystemEmergencyHelper.java b/services/core/java/com/android/server/location/injector/SystemEmergencyHelper.java index dc5299077cc9..1fb00eff86d7 100644 --- a/services/core/java/com/android/server/location/injector/SystemEmergencyHelper.java +++ b/services/core/java/com/android/server/location/injector/SystemEmergencyHelper.java @@ -16,6 +16,8 @@ package com.android.server.location.injector; +import static com.android.server.location.LocationManagerService.TAG; + import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; @@ -23,6 +25,7 @@ import android.content.IntentFilter; import android.os.SystemClock; import android.telephony.TelephonyCallback; import android.telephony.TelephonyManager; +import android.util.Log; import com.android.server.FgThread; @@ -67,8 +70,12 @@ public class SystemEmergencyHelper extends EmergencyHelper { } synchronized (SystemEmergencyHelper.this) { - mIsInEmergencyCall = mTelephonyManager.isEmergencyNumber( - intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER)); + try { + mIsInEmergencyCall = mTelephonyManager.isEmergencyNumber( + intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER)); + } catch (IllegalStateException e) { + Log.w(TAG, "Failed to call TelephonyManager.isEmergencyNumber().", e); + } } } }, new IntentFilter(Intent.ACTION_NEW_OUTGOING_CALL)); |