summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/acc/acc.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/acc/acc.cpp17
1 files changed, 9 insertions, 8 deletions
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> module, const char* name)
- : ServiceFramework(name), module(std::move(module)) {
- profile_manager = std::make_unique<ProfileManager>();
-}
+Module::Interface::Interface(std::shared_ptr<Module> module,
+ std::shared_ptr<ProfileManager> profile_manager, const char* name)
+ : ServiceFramework(name), module(std::move(module)),
+ profile_manager(std::make_shared<ProfileManager>(*profile_manager)) {}
void InstallInterfaces(SM::ServiceManager& service_manager) {
auto module = std::make_shared<Module>();
- std::make_shared<ACC_AA>(module)->InstallAsService(service_manager);
- std::make_shared<ACC_SU>(module)->InstallAsService(service_manager);
- std::make_shared<ACC_U0>(module)->InstallAsService(service_manager);
- std::make_shared<ACC_U1>(module)->InstallAsService(service_manager);
+ auto profile_manager = std::make_shared<ProfileManager>();
+ std::make_shared<ACC_AA>(module, profile_manager)->InstallAsService(service_manager);
+ std::make_shared<ACC_SU>(module, profile_manager)->InstallAsService(service_manager);
+ std::make_shared<ACC_U0>(module, profile_manager)->InstallAsService(service_manager);
+ std::make_shared<ACC_U1>(module, profile_manager)->InstallAsService(service_manager);
}
} // namespace Service::Account