Set BondState to Bonding only if it not Bonded already.

Sometimes we might be paired but the other end might not have stored the link
key. So when we initiate connection the other end will ask for the authorization.
This was setting out Bond State to Bonding.

Change-Id: Iba6fd660ac90a3f48da62e7b6cf479054624a5af
This commit is contained in:
Jaikumar Ganesh
2009-09-30 13:57:37 -07:00
parent 15f0699504
commit 37686069ae

View File

@@ -403,9 +403,13 @@ class BluetoothEventLoop {
mBluetoothService.cancelPairingUserInput(address);
return null;
}
// Set state to BONDING, for incoming connections it will be set here.
// For outgoing connections, it gets set when call createBond.
mBluetoothService.getBondState().setBondState(address, BluetoothDevice.BOND_BONDING);
// Set state to BONDING. For incoming connections it will be set here.
// For outgoing connections, it gets set when we call createBond.
// Also set it only when the state is not already Bonded, we can sometimes
// get an authorization request from the remote end if it doesn't have the link key
// while we still have it.
if (mBluetoothService.getBondState().getBondState(address) != BluetoothDevice.BOND_BONDED)
mBluetoothService.getBondState().setBondState(address, BluetoothDevice.BOND_BONDING);
return address;
}