summaryrefslogtreecommitdiff
path: root/rcs
diff options
context:
space:
mode:
authorBrad Ebinger <breadley@google.com>2017-05-03 16:37:54 -0700
committerBrad Ebinger <breadley@google.com>2017-05-04 17:01:50 +0000
commit99ef90f901e579067ea8df1c1868482458aceccf (patch)
tree657c6754fa701663360be276d93280f3af634700 /rcs
parenta311636ad17b3ffccc9908a173cfb45b32d8bf6b (diff)
downloadims-99ef90f901e579067ea8df1c1868482458aceccf.tar.gz
Stop RcsService crash when CarrierConfig misbehaves
When the CarrierConfig config returns null, we do not crash anymore. Bug: 37868318 Test: Manual Testing Change-Id: Icb6d2d99bc108d5c238f1a90ef382457f6c43f35
Diffstat (limited to 'rcs')
-rw-r--r--rcs/rcsservice/src/com/android/service/ims/RcsSettingUtils.java11
1 files changed, 8 insertions, 3 deletions
diff --git a/rcs/rcsservice/src/com/android/service/ims/RcsSettingUtils.java b/rcs/rcsservice/src/com/android/service/ims/RcsSettingUtils.java
index 862074d..40de8f7 100644
--- a/rcs/rcsservice/src/com/android/service/ims/RcsSettingUtils.java
+++ b/rcs/rcsservice/src/com/android/service/ims/RcsSettingUtils.java
@@ -29,6 +29,8 @@
package com.android.service.ims;
import java.lang.String;
+
+import android.os.PersistableBundle;
import android.telephony.CarrierConfigManager;
import android.telephony.TelephonyManager;
import android.content.Context;
@@ -55,9 +57,12 @@ public class RcsSettingUtils{
CarrierConfigManager configManager = (CarrierConfigManager)
context.getSystemService(Context.CARRIER_CONFIG_SERVICE);
// Don't need provision.
- if (configManager != null && !configManager.getConfig().getBoolean(
- CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONED_BOOL)) {
- return true;
+ if (configManager != null) {
+ PersistableBundle config = configManager.getConfig();
+ if (config != null && !config.getBoolean(
+ CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONED_BOOL)) {
+ return true;
+ }
}
boolean provisioned = defaultValue;