From 8d763c03028419884ced41c7b630ce9a5c45437d Mon Sep 17 00:00:00 2001 From: Prathmesh Prabhu Date: Fri, 11 Mar 2016 13:27:17 -0800 Subject: [PATCH] settings: Fix more NPEs when bluetooth is missing. Fix a couple NPEs in the settings app when device doesn't support bluetooth. BUG:27600761 Change-Id: I356f5e7f321e8230f85ec74da9e405449431846b --- src/com/android/settings/ResetNetworkConfirm.java | 6 +++++- .../android/settings/widget/SettingsAppWidgetProvider.java | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/ResetNetworkConfirm.java b/src/com/android/settings/ResetNetworkConfirm.java index 777f4d4aa41..110398f1bd3 100644 --- a/src/com/android/settings/ResetNetworkConfirm.java +++ b/src/com/android/settings/ResetNetworkConfirm.java @@ -16,6 +16,7 @@ package com.android.settings; +import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothManager; import android.content.Context; import android.net.ConnectivityManager; @@ -96,7 +97,10 @@ public class ResetNetworkConfirm extends InstrumentedFragment { BluetoothManager btManager = (BluetoothManager) context.getSystemService(Context.BLUETOOTH_SERVICE); if (btManager != null) { - btManager.getAdapter().factoryReset(); + BluetoothAdapter btAdapter = btManager.getAdapter(); + if (btAdapter != null) { + btAdapter.factoryReset(); + } } ImsManager.factoryReset(context); diff --git a/src/com/android/settings/widget/SettingsAppWidgetProvider.java b/src/com/android/settings/widget/SettingsAppWidgetProvider.java index d7cbaaec6dd..38fed94a674 100644 --- a/src/com/android/settings/widget/SettingsAppWidgetProvider.java +++ b/src/com/android/settings/widget/SettingsAppWidgetProvider.java @@ -454,6 +454,9 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { return STATE_UNKNOWN; // On emulator? } sLocalBluetoothAdapter = manager.getBluetoothAdapter(); + if (sLocalBluetoothAdapter == null) { + return STATE_UNKNOWN; // On emulator? + } } return bluetoothStateToFiveState(sLocalBluetoothAdapter.getBluetoothState()); }