diff --git a/components/brave_origin/brave_origin_service.cc b/components/brave_origin/brave_origin_service.cc index aaeb43638f1..7142d0b4c5b 100644 --- a/components/brave_origin/brave_origin_service.cc +++ b/components/brave_origin/brave_origin_service.cc @@ -73,6 +73,15 @@ BraveOriginService::BraveOriginService( BraveOriginService::~BraveOriginService() = default; +void BraveOriginService::Shutdown() { + weak_ptr_factory_.InvalidateWeakPtrs(); + skus_service_.reset(); + local_state_ = nullptr; + profile_prefs_ = nullptr; + profile_policy_service_ = nullptr; + browser_policy_service_ = nullptr; +} + bool BraveOriginService::IsPolicyControlledByBraveOrigin( std::string_view policy_key) const { if (!IsBraveOriginEnabled()) { diff --git a/components/brave_origin/brave_origin_service.h b/components/brave_origin/brave_origin_service.h index f98ac0e22f0..05f224a8d41 100644 --- a/components/brave_origin/brave_origin_service.h +++ b/components/brave_origin/brave_origin_service.h @@ -44,6 +44,9 @@ class BraveOriginService : public KeyedService { SkusServiceGetter skus_service_getter); ~BraveOriginService() override; + // KeyedService: + void Shutdown() override; + // Check if a policy is controlled by BraveOrigin bool IsPolicyControlledByBraveOrigin(std::string_view policy_key) const;