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

Commit 52b3642d authored by Łukasz Rymanowski's avatar Łukasz Rymanowski Committed by Automerger Merge Worker
Browse files

Merge "leaudio: Clear configuration cache when device got disconnected." into...

Merge "leaudio: Clear configuration cache when device got disconnected." into main am: e90b0121 am: e7860413 am: 38502cd5 am: c8d97326

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2781312



Change-Id: I9cacc0fee0760abfc3f2be52194e465c180d8d7a
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 9a2885cc c8d97326
Loading
Loading
Loading
Loading
+8 −12
Original line number Diff line number Diff line
@@ -744,6 +744,14 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine {
    /* mark ASEs as not used. */
    leAudioDevice->DeactivateAllAses();

    /* Update the current group audio context availability which could change
     * due to disconnected group member.
     */
    group->ReloadAudioLocations();
    group->ReloadAudioDirections();
    group->UpdateAudioContextAvailability();
    group->InvalidateCachedConfigurations();

    /* If group is in Idle and not transitioning, update the current group
     * audio context availability which could change due to disconnected group
     * member.
@@ -751,10 +759,6 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine {
    if ((group->GetState() == AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) &&
        !group->IsInTransition()) {
      LOG_INFO("group: %d is in IDLE", group->group_id_);
      group->ReloadAudioLocations();
      group->ReloadAudioDirections();
      group->UpdateAudioContextAvailability();
      group->InvalidateCachedConfigurations();

      /* When OnLeAudioDeviceSetStateTimeout happens, group will transition
       * to IDLE, and after that an ACL disconnect will be triggered. We need
@@ -775,14 +779,6 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine {
        ADDRESS_TO_LOGGABLE_CSTR(leAudioDevice->address_),
        group->IsAnyDeviceConnected(), group->HaveAllCisesDisconnected());

    /* Update the current group audio context availability which could change
     * due to disconnected group member.
     */
    group->ReloadAudioLocations();
    group->ReloadAudioDirections();
    group->UpdateAudioContextAvailability();
    group->InvalidateCachedConfigurations();

    if (group->IsAnyDeviceConnected()) {
      /*
       * ACL of one of the device has been dropped. If number of CISes has