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

Commit 213409cb authored by Kyunglyul Hyun's avatar Kyunglyul Hyun
Browse files

Correct isDirect in BluetoothGatt#connect

isDirect was !mAutoConnect when it was first connected
(in mBluetoothCallback#onClientRegistered)
but it was always false in reconnect

Tag: #stability
Bug: 233292528
Test: atest BluetoothInstrumentationTests
Change-Id: Ic7913d6612fc292d3e9d48c6b49faffe1f6a3034
parent 16ee6e52
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1030,9 +1030,14 @@ public final class BluetoothGatt implements BluetoothProfile {
    @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)
    public boolean connect() {
        try {
            if (DBG) {
                Log.d(TAG, "connect(void) - device: " + mDevice.getAddress()
                        + ", auto=" + mAutoConnect);
            }

            // autoConnect is inverse of "isDirect"
            final SynchronousResultReceiver recv = new SynchronousResultReceiver();
            mService.clientConnect(mClientIf, mDevice.getAddress(), false, mTransport,
            mService.clientConnect(mClientIf, mDevice.getAddress(), !mAutoConnect, mTransport,
                    mOpportunistic, mPhy, mAttributionSource, recv);
            recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null);
            return true;