Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 37686069 authored by Jaikumar Ganesh's avatar Jaikumar Ganesh
Browse files

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
parent 15f06995
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -403,8 +403,12 @@ 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.
        // 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;
    }