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

Commit e6c62c59 authored by Łukasz Rymanowski's avatar Łukasz Rymanowski
Browse files

csis: Fix possible assert

On stack closure it might happen that some other module can try to get
CsisClient instance and it is perfectly fine when nullptr is returned.

Bug: 369559149
Test: atest bluetooth_csis_test
Flag: Exempt, trivial fix
Change-Id: Ie7af284298a8f117c16c51dd87763b9db6ec8579
parent 0d2876ea
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -2327,7 +2327,9 @@ void CsisClient::Initialize(bluetooth::csis::CsisClientCallbacks* callbacks, Clo
bool CsisClient::IsCsisClientRunning() { return instance; }

CsisClient* CsisClient::Get(void) {
  log::assert_that(instance != nullptr, "assert failed: instance != nullptr");
  if (instance == nullptr) {
    log::error("instance not available");
  }
  return instance;
}

+1 −1
Original line number Diff line number Diff line
@@ -630,7 +630,7 @@ protected:
  const RawAddress test_address2 = GetTestAddress(1);
};

TEST_F(CsisClientTest, test_get_uninitialized) { ASSERT_DEATH(CsisClient::Get(), ""); }
TEST_F(CsisClientTest, test_get_uninitialized) { ASSERT_EQ(CsisClient::Get(), nullptr); }

TEST_F(CsisClientTest, test_initialize) {
  CsisClient::Initialize(callbacks.get(), base::DoNothing());