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

Commit 973cdd13 authored by Myles Watson's avatar Myles Watson Committed by Gerrit Code Review
Browse files

Merge "leaudio: Cancel background connection"

parents 87ad22dd 8810b8fb
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -3015,7 +3015,7 @@ class LeAudioClientImpl : public LeAudioClient {
    }
    groupStateMachine_->Cleanup();
    aseGroups_.Cleanup();
    leAudioDevices_.Cleanup();
    leAudioDevices_.Cleanup(gatt_if_);
    if (gatt_if_) BTA_GATTC_AppDeregister(gatt_if_);

    std::move(cleanupCb).Run();
+10 −2
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ using bluetooth::hci::kIsoCigPhy1M;
using bluetooth::hci::kIsoCigPhy2M;
using bluetooth::hci::iso_manager::kIsoSca0To20Ppm;
using le_audio::AudioSetConfigurationProvider;
using le_audio::DeviceConnectState;
using le_audio::set_configurations::CodecCapabilitySetting;
using le_audio::types::ase;
using le_audio::types::AseState;
@@ -2687,9 +2688,16 @@ void LeAudioDevices::Dump(int fd, int group_id) {
  }
}

void LeAudioDevices::Cleanup(void) {
void LeAudioDevices::Cleanup(tGATT_IF client_if) {
  for (auto const& device : leAudioDevices_) {
    if (device->conn_id_ != GATT_INVALID_CONN_ID) {
    auto connection_state = device->GetConnectionState();
    if (connection_state == DeviceConnectState::DISCONNECTED) {
      continue;
    }

    if (connection_state == DeviceConnectState::CONNECTING_AUTOCONNECT) {
      BTA_GATTC_CancelOpen(client_if, device->address_, false);
    } else {
      BtaGattQueue::Clean(device->conn_id_);
      BTA_GATTC_Close(device->conn_id_);
      device->DisconnectAcl();
+1 −1
Original line number Diff line number Diff line
@@ -202,7 +202,7 @@ class LeAudioDevices {
  LeAudioDevice* FindByCisConnHdl(uint8_t cig_id, uint16_t conn_hdl);
  size_t Size(void);
  void Dump(int fd, int group_id);
  void Cleanup(void);
  void Cleanup(tGATT_IF client_if);

 private:
  std::vector<std::shared_ptr<LeAudioDevice>> leAudioDevices_;