From b07f1409045091476e5296f9b0dd41c8712fe49a Mon Sep 17 00:00:00 2001 From: Rebecca Silberstein Date: Tue, 4 Oct 2016 13:53:33 -0700 Subject: Tethering: check if configManager is null Before attempting to retrieve a carrier entitlement setting, first make sure we have a carrier config manager and if we do have a carrier config manager, the config it holds is not null. Bug: 31929638 Change-Id: Iee476c476cb3de109cdccbd955b7fb986dd4267b --- .../core/java/com/android/server/connectivity/Tethering.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/services/core/java/com/android/server/connectivity/Tethering.java b/services/core/java/com/android/server/connectivity/Tethering.java index 50faf3b72a47..da9c5474b66b 100644 --- a/services/core/java/com/android/server/connectivity/Tethering.java +++ b/services/core/java/com/android/server/connectivity/Tethering.java @@ -405,11 +405,13 @@ public class Tethering extends BaseNetworkObserver implements IControlsTethering // Check carrier config for entitlement checks final CarrierConfigManager configManager = (CarrierConfigManager) mContext .getSystemService(Context.CARRIER_CONFIG_SERVICE); - boolean isEntitlementCheckRequired = configManager.getConfig().getBoolean( - CarrierConfigManager.KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL); - - if (!isEntitlementCheckRequired) { - return false; + if (configManager != null && configManager.getConfig() != null) { + // we do have a CarrierConfigManager and it has a config. + boolean isEntitlementCheckRequired = configManager.getConfig().getBoolean( + CarrierConfigManager.KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL); + if (!isEntitlementCheckRequired) { + return false; + } } return (provisionApp.length == 2); } -- cgit v1.2.3-59-g8ed1b