#include <dlfcn.h>
+#include "stg/common.h"
+#include "stg/store.h"
#include "store_loader.h"
-#include "common.h"
-#include "store.h"
#include "settings_impl.h"
STORE_LOADER::STORE_LOADER(const SETTINGS_IMPL & settings)
{
if (isLoaded)
{
- errorStr = "Store plugin '" + pluginFileName + "' was alredy loaded!";
+ errorStr = "Store plugin '" + pluginFileName + "' was already loaded!";
printfd(__FILE__, "STORE_LOADER::Load() - %s\n", errorStr.c_str());
return false;
}
isLoaded = true;
STORE * (*GetStore)();
-GetStore = (STORE * (*)())dlsym(handle, "GetStore");
+GetStore = reinterpret_cast<STORE * (*)()>(dlsym(handle, "GetStore"));
if (!GetStore)
{
errorStr = std::string("GetStore() not found! ") + dlerror();
return true;
}
+delete plugin;
+
if (dlclose(handle))
{
errorStr = "Failed to unload plugin '";