From 937d0c5a8e0fb2ba9e7674b007a239d9591cf136 Mon Sep 17 00:00:00 2001 From: Emerick Rogul Date: Tue, 18 May 2021 12:17:59 -0400 Subject: [PATCH] Only wait for OnRewardsInitialized if it didn't already fire --- .../brave_ads/browser/ads_service_browsertest.cc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/components/brave_ads/browser/ads_service_browsertest.cc b/components/brave_ads/browser/ads_service_browsertest.cc index cedeb147e74a..a5b702fb04c1 100644 --- a/components/brave_ads/browser/ads_service_browsertest.cc +++ b/components/brave_ads/browser/ads_service_browsertest.cc @@ -102,17 +102,25 @@ class TestRewardsServiceObserver ~TestRewardsServiceObserver() override = default; void WaitForRewardsInitialization() { + if (rewards_initialized_) { + return; + } + run_loop_ = std::make_unique(); run_loop_->Run(); } // RewardsServiceObserver implementation void OnRewardsInitialized(brave_rewards::RewardsService* service) override { - run_loop_->Quit(); + rewards_initialized_ = true; + if (run_loop_) { + run_loop_->Quit(); + } } private: std::unique_ptr run_loop_; + bool rewards_initialized_ = false; }; class BraveAdsBrowserTest : public InProcessBrowserTest,