am 1308453b
: b/2652059 Fixed the broken BT connects/disconnects after unpair
Merge commit '1308453b16c2ca85a456bd4bb7f3c71c916bd83e' into froyo-plus-aosp * commit '1308453b16c2ca85a456bd4bb7f3c71c916bd83e': b/2652059 Fixed the broken BT connects/disconnects after unpair
This commit is contained in:
@@ -749,7 +749,33 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice>
|
||||
public void onBondingStateChanged(int bondState) {
|
||||
if (bondState == BluetoothDevice.BOND_NONE) {
|
||||
mProfiles.clear();
|
||||
|
||||
BluetoothJob job = workQueue.peek();
|
||||
if (job == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Remove the first item and process the next one
|
||||
if (job.command == BluetoothCommand.REMOVE_BOND
|
||||
&& job.cachedDevice.mDevice.equals(mDevice)) {
|
||||
workQueue.poll(); // dequeue
|
||||
} else {
|
||||
// Unexpected job
|
||||
if (D) {
|
||||
Log.d(TAG, "job.command = " + job.command);
|
||||
Log.d(TAG, "mDevice:" + mDevice + " != head:" + job.toString());
|
||||
}
|
||||
|
||||
// Check to see if we need to remove the stale items from the queue
|
||||
if (!pruneQueue(null)) {
|
||||
// nothing in the queue was modify. Just ignore the notification and return.
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
processCommands();
|
||||
}
|
||||
|
||||
refresh();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user