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

Commit bb863768 authored by Sunny Kapdi's avatar Sunny Kapdi
Browse files

BTAudio HAL: Init and check for factory provider

Initialize factory_provider_ and check for its validity
before attempting to unlinkToDeath

Bug: 233961816
Tag: #refactor
Test: atest BluetoothInstrumentationTests
Change-Id: If0a883968a563da3df56aecfb97b2d97f6bbc4e5
parent 8b110ea0
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ std::ostream& operator<<(std::ostream& os, const BluetoothAudioCtrlAck& ack) {
BluetoothAudioClientInterface::BluetoothAudioClientInterface(
    IBluetoothTransportInstance* instance)
    : provider_(nullptr),
      provider_factory_(nullptr),
      session_started_(false),
      data_mq_(nullptr),
      transport_(instance) {
@@ -154,7 +155,7 @@ BluetoothAudioSinkClientInterface::BluetoothAudioSinkClientInterface(
}

BluetoothAudioSinkClientInterface::~BluetoothAudioSinkClientInterface() {
  if (provider_ != nullptr) {
  if (provider_factory_ != nullptr) {
    AIBinder_unlinkToDeath(provider_factory_->asBinder().get(), death_recipient_.get(),
                           nullptr);
  }
@@ -168,7 +169,7 @@ BluetoothAudioSourceClientInterface::BluetoothAudioSourceClientInterface(
}

BluetoothAudioSourceClientInterface::~BluetoothAudioSourceClientInterface() {
  if (provider_ != nullptr) {
  if (provider_factory_ != nullptr) {
    AIBinder_unlinkToDeath(provider_factory_->asBinder().get(), death_recipient_.get(),
                           nullptr);
  }