aboutsummaryrefslogtreecommitdiffstats
path: root/src/core/module/ModuleManager.h
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2023-12-03 12:28:46 +0000
committersaturneric <[email protected]>2023-12-03 12:28:46 +0000
commit883db05d54510e76b6548e107593187e1306117d (patch)
treea4de9d60d3bfeb69ba443129d208feef65250b2c /src/core/module/ModuleManager.h
parentfeat: improve memory security of function framework (diff)
downloadGpgFrontend-883db05d54510e76b6548e107593187e1306117d.tar.gz
GpgFrontend-883db05d54510e76b6548e107593187e1306117d.zip
feat: general improvements of aync execution and memory security
Diffstat (limited to 'src/core/module/ModuleManager.h')
-rw-r--r--src/core/module/ModuleManager.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/module/ModuleManager.h b/src/core/module/ModuleManager.h
index cf845f96..76d6c042 100644
--- a/src/core/module/ModuleManager.h
+++ b/src/core/module/ModuleManager.h
@@ -91,13 +91,14 @@ class GPGFRONTEND_CORE_EXPORT ModuleManager : public QObject {
template <typename T, typename... Args>
void RegisterModule(Args&&... args) {
ModuleManager::GetInstance()->RegisterModule(
- std::make_shared<T>(std::forward<Args>(args)...));
+ GpgFrontend::SecureCreateSharedObject<T>(std::forward<Args>(args)...));
}
template <typename T, typename... Args>
void RegisterAndActivateModule(Args&&... args) {
auto manager = ModuleManager::GetInstance();
- auto module = std::make_shared<T>(std::forward<Args>(args)...);
+ auto module =
+ GpgFrontend::SecureCreateSharedObject<T>(std::forward<Args>(args)...);
manager->RegisterModule(module);
manager->ActiveModule(module->GetModuleIdentifier());
}