From 40b77fe04b2fc37b7f98b35fe9cf8ae54931dd1d Mon Sep 17 00:00:00 2001 From: Ganesh Ganapathi Batta Date: Mon, 10 Sep 2012 11:13:54 -0700 Subject: [PATCH] Fix NPE in bluetooth Permission Activity This fixes a NPE by ensuring that cached device list has a cached device associated with a given BDA before accessing the cached device Bug:5964529 Change-Id: Ib2c3596e6e008c78f9f1137134e421ca710e1217 --- .../settings/bluetooth/BluetoothPermissionActivity.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) mode change 100644 => 100755 src/com/android/settings/bluetooth/BluetoothPermissionActivity.java diff --git a/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java b/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java old mode 100644 new mode 100755 index 4fd6cee41b7..16476fad309 --- a/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java +++ b/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java @@ -251,6 +251,13 @@ public class BluetoothPermissionActivity extends AlertActivity implements CachedBluetoothDeviceManager cachedDeviceManager = bluetoothManager.getCachedDeviceManager(); CachedBluetoothDevice cachedDevice = cachedDeviceManager.findDevice(mDevice); - cachedDevice.setPhonebookPermissionChoice(permissionChoice); + if (cachedDevice != null ) { + cachedDevice.setPhonebookPermissionChoice(permissionChoice); + } else { + cachedDevice = cachedDeviceManager.addDevice(bluetoothManager.getBluetoothAdapter(), + bluetoothManager.getProfileManager(), + mDevice); + cachedDevice.setPhonebookPermissionChoice(permissionChoice); + } } }