From 6aa8ee6943f6ae8b0ed1770b91355b36c2618a4c Mon Sep 17 00:00:00 2001 From: David Marcec Date: Sat, 11 Aug 2018 13:17:06 +1000 Subject: Refactored profile manager sharing --- src/core/hle/service/acc/acc.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/core/hle/service/acc/acc.cpp') diff --git a/src/core/hle/service/acc/acc.cpp b/src/core/hle/service/acc/acc.cpp index e74379a24..22e44368a 100644 --- a/src/core/hle/service/acc/acc.cpp +++ b/src/core/hle/service/acc/acc.cpp @@ -197,17 +197,18 @@ void Module::Interface::GetBaasAccountManagerForApplication(Kernel::HLERequestCo LOG_DEBUG(Service_ACC, "called"); } -Module::Interface::Interface(std::shared_ptr module, const char* name) - : ServiceFramework(name), module(std::move(module)) { - profile_manager = std::make_unique(); -} +Module::Interface::Interface(std::shared_ptr module, + std::shared_ptr profile_manager, const char* name) + : ServiceFramework(name), module(std::move(module)), + profile_manager(std::make_shared(*profile_manager)) {} void InstallInterfaces(SM::ServiceManager& service_manager) { auto module = std::make_shared(); - std::make_shared(module)->InstallAsService(service_manager); - std::make_shared(module)->InstallAsService(service_manager); - std::make_shared(module)->InstallAsService(service_manager); - std::make_shared(module)->InstallAsService(service_manager); + auto profile_manager = std::make_shared(); + std::make_shared(module, profile_manager)->InstallAsService(service_manager); + std::make_shared(module, profile_manager)->InstallAsService(service_manager); + std::make_shared(module, profile_manager)->InstallAsService(service_manager); + std::make_shared(module, profile_manager)->InstallAsService(service_manager); } } // namespace Service::Account -- cgit v1.2.3