dirent* entry = NULL;
while (0 != (entry = readdir(library)))
{
+ if (entry->d_name[0] == '.')
+ continue;
if (InspIRCd::Match(entry->d_name, filename, ascii_case_insensitive_map))
{
if (!this->Load(entry->d_name))
{
newmod->ModuleSourceFile = filename_str;
newmod->ModuleDLLManager = newhandle;
- Version v = newmod->GetVersion();
Modules[filename_str] = newmod;
-
newmod->init();
+ Version v = newmod->GetVersion();
ServerInstance->Logs->Log("MODULE", DEFAULT,"New module introduced: %s (Module version %s)%s",
filename, newhandle->GetVersion().c_str(), (!(v.Flags & VF_VENDOR) ? " [3rd Party]" : " [Vendor]"));
}
ServerInstance->GlobalCulls.Apply();
delete dll;
bool rv = ServerInstance->Modules->Load(name.c_str());
- callback->Call(rv);
+ if (callback)
+ callback->Call(rv);
ServerInstance->GlobalCulls.AddItem(this);
}
};