diff options
author | Neha Jain <jainne@google.com> | 2022-06-29 23:53:57 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-06-30 02:24:28 +0000 |
commit | 856f6acf59076eb3b200b1581d178745c9f0e681 (patch) | |
tree | 015aab1ce91e4148f0c851baa4681b01d9aea25c /framework/java/android/bluetooth/BluetoothGattServer.java | |
parent | 4c024a2dee95a9c9f94e8c4616e6aa9cdb5aa2a5 (diff) |
Revert "Revert "Reuse SynchronousResultReceivers instead of creating new.""
This reverts commit dd85e91cea26c7f706af36c852e79d5b4ca1f173.
Bug: 217366135
Reason for revert: Need this to fix a crash bug in tm-dev
Change-Id: I2a94c278edc0681c5b8af6ea0a0171b71d72c650
(cherry picked from commit dbaf406ccb0ed887d4e93057c9ec0d3457f14457)
Merged-In: I2a94c278edc0681c5b8af6ea0a0171b71d72c650
Diffstat (limited to 'framework/java/android/bluetooth/BluetoothGattServer.java')
-rw-r--r-- | framework/java/android/bluetooth/BluetoothGattServer.java | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/framework/java/android/bluetooth/BluetoothGattServer.java b/framework/java/android/bluetooth/BluetoothGattServer.java index 8b84505e36..d652bd8476 100644 --- a/framework/java/android/bluetooth/BluetoothGattServer.java +++ b/framework/java/android/bluetooth/BluetoothGattServer.java @@ -502,7 +502,7 @@ public final class BluetoothGattServer implements BluetoothProfile { mCallback = callback; try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.registerServer(new ParcelUuid(uuid), mBluetoothGattServerCallback, eatt_support, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); @@ -539,7 +539,7 @@ public final class BluetoothGattServer implements BluetoothProfile { try { mCallback = null; - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.unregisterServer(mServerIf, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); mServerIf = 0; @@ -595,7 +595,7 @@ public final class BluetoothGattServer implements BluetoothProfile { try { // autoConnect is inverse of "isDirect" - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.serverConnect(mServerIf, device.getAddress(), !autoConnect, mTransport, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); @@ -621,7 +621,7 @@ public final class BluetoothGattServer implements BluetoothProfile { if (mService == null || mServerIf == 0) return; try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.serverDisconnect(mServerIf, device.getAddress(), mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); } catch (RemoteException | TimeoutException e) { @@ -651,7 +651,7 @@ public final class BluetoothGattServer implements BluetoothProfile { @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void setPreferredPhy(BluetoothDevice device, int txPhy, int rxPhy, int phyOptions) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.serverSetPreferredPhy(mServerIf, device.getAddress(), txPhy, rxPhy, phyOptions, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); @@ -670,7 +670,7 @@ public final class BluetoothGattServer implements BluetoothProfile { @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void readPhy(BluetoothDevice device) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.serverReadPhy(mServerIf, device.getAddress(), mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); } catch (RemoteException | TimeoutException e) { @@ -706,7 +706,7 @@ public final class BluetoothGattServer implements BluetoothProfile { if (mService == null || mServerIf == 0) return false; try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.sendResponse(mServerIf, device.getAddress(), requestId, status, offset, value, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); @@ -801,7 +801,7 @@ public final class BluetoothGattServer implements BluetoothProfile { } try { - final SynchronousResultReceiver<Integer> recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver<Integer> recv = SynchronousResultReceiver.get(); mService.sendNotification(mServerIf, device.getAddress(), characteristic.getInstanceId(), confirm, value, mAttributionSource, recv); @@ -842,7 +842,7 @@ public final class BluetoothGattServer implements BluetoothProfile { mPendingService = service; try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.addService(mServerIf, service, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); } catch (RemoteException | TimeoutException e) { @@ -871,7 +871,7 @@ public final class BluetoothGattServer implements BluetoothProfile { if (intService == null) return false; try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.removeService(mServerIf, service.getInstanceId(), mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); mServices.remove(intService); @@ -894,7 +894,7 @@ public final class BluetoothGattServer implements BluetoothProfile { if (mService == null || mServerIf == 0) return; try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); mService.clearServices(mServerIf, mAttributionSource, recv); recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(null); mServices.clear(); |