diff options
author | Priti Aghera <paghera@broadcom.com> | 2012-04-11 15:29:22 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-07-16 21:58:57 -0700 |
commit | 990b2cd65392bc6db58eda732ad41de22b713202 (patch) | |
tree | 3c80968afea65c0169613fe250ddb3351d039d71 | |
parent | edb14a4944d66ca9255b2ab9b384c583b626fd94 (diff) | |
download | android_packages_apps_Bluetooth-990b2cd65392bc6db58eda732ad41de22b713202.tar.gz android_packages_apps_Bluetooth-990b2cd65392bc6db58eda732ad41de22b713202.tar.bz2 android_packages_apps_Bluetooth-990b2cd65392bc6db58eda732ad41de22b713202.zip |
Patch for inconsistent pair-unpair state
Change-Id: I356cd978c6b30b415a94267c9e535dc0297d6540
-rwxr-xr-x | src/com/android/bluetooth/btservice/AdapterProperties.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/com/android/bluetooth/btservice/AdapterProperties.java b/src/com/android/bluetooth/btservice/AdapterProperties.java index 8d053028a..47f8c63be 100755 --- a/src/com/android/bluetooth/btservice/AdapterProperties.java +++ b/src/com/android/bluetooth/btservice/AdapterProperties.java @@ -407,9 +407,13 @@ class AdapterProperties { for (int j = 0; j < number; j++) { System.arraycopy(val, j * BD_ADDR_LEN, addrByte, 0, BD_ADDR_LEN); mBondedDevices[j] = mRemoteDevices.getDevice(addrByte); - DeviceProperties prop = mRemoteDevices.getDeviceProperties(mBondedDevices[j]); - if(prop == null) + DeviceProperties prop = null; + if ( mBondedDevices[j] != null ) + prop = mRemoteDevices.getDeviceProperties(mBondedDevices[j]); + if(mBondedDevices[j] == null || prop == null){ prop = mRemoteDevices.addDeviceProperties(addrByte); + mBondedDevices[j] = mRemoteDevices.getDevice(addrByte); + } prop.setBondState(BluetoothDevice.BOND_BONDED); debugLog("Bonded Device" + mBondedDevices[j]); } |