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

Commit 85f42021 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Do resolving list operations via handler" am: 05aab091 am: 6c4dff1c...

Merge "Do resolving list operations via handler" am: 05aab091 am: 6c4dff1c am: 5b27e3d3 am: 42bd1b6f

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



Change-Id: I75ac6e17e1d792775b89b7ef97b8b61545078c1b
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 4fecb679 42bd1b6f
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -230,6 +230,11 @@ void LeAddressManager::ack_pause(LeAddressManagerCallback* callback) {
  for (auto client : registered_clients_) {
    if (client.second != ClientState::PAUSED) {
      // make sure all client paused
      if (client.second != ClientState::WAITING_FOR_PAUSE) {
        LOG_DEBUG("Trigger OnPause for client that not paused and not waiting for pause");
        client.second = ClientState::WAITING_FOR_PAUSE;
        client.first->OnPause();
      }
      return;
    }
  }
@@ -421,9 +426,9 @@ void LeAddressManager::AddDeviceToResolvingList(
  cached_commands_.push(std::move(enable));

  if (registered_clients_.empty()) {
    handle_next_command();
    handler_->BindOnceOn(this, &LeAddressManager::handle_next_command).Invoke();
  } else {
    pause_registered_clients();
    handler_->BindOnceOn(this, &LeAddressManager::pause_registered_clients).Invoke();
  }
}

@@ -452,9 +457,9 @@ void LeAddressManager::RemoveDeviceFromResolvingList(
  cached_commands_.push(std::move(enable));

  if (registered_clients_.empty()) {
    handle_next_command();
    handler_->BindOnceOn(this, &LeAddressManager::handle_next_command).Invoke();
  } else {
    pause_registered_clients();
    handler_->BindOnceOn(this, &LeAddressManager::pause_registered_clients).Invoke();
  }
}

@@ -479,7 +484,7 @@ void LeAddressManager::ClearResolvingList() {
  Command enable = {CommandType::SET_ADDRESS_RESOLUTION_ENABLE, std::move(enable_builder)};
  cached_commands_.push(std::move(enable));

  pause_registered_clients();
  handler_->BindOnceOn(this, &LeAddressManager::pause_registered_clients).Invoke();
}

template <class View>