fix: Make sure library plugins are always initialized

This commit is contained in:
WerWolv
2023-12-28 14:59:23 +01:00
parent f44b44a881
commit 5adeac6bbc
2 changed files with 46 additions and 42 deletions

View File

@@ -17,6 +17,8 @@
namespace hex {
Plugin::Plugin(const std::fs::path &path) : m_path(path) {
log::info("Loading plugin '{}'", wolv::util::toUTF8String(path.filename()));
#if defined(OS_WINDOWS)
m_handle = uintptr_t(LoadLibraryW(path.c_str()));
@@ -33,8 +35,6 @@ namespace hex {
}
#endif
log::info("Loaded plugin '{}'", wolv::util::toUTF8String(path.filename()));
m_functions.initializePluginFunction = getPluginFunction<PluginFunctions::InitializePluginFunc>("initializePlugin");
m_functions.initializeLibraryFunction = getPluginFunction<PluginFunctions::InitializePluginFunc>("initializeLibrary");
m_functions.getPluginNameFunction = getPluginFunction<PluginFunctions::GetPluginNameFunc>("getPluginName");
@@ -88,8 +88,6 @@ namespace hex {
const auto pluginName = wolv::util::toUTF8String(m_path.filename());
if (this->isLibraryPlugin()) {
m_functions.initializeLibraryFunction();
log::info("Library plugin '{}' initialized successfully", pluginName);
return true;
}