summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2017-08-20 14:51:30 +0100
committerPeter Powell <petpow@saberuk.com>2017-08-27 13:14:41 +0100
commit2133bc373f26d953a4fb519f27060e7141001806 (patch)
tree4d4d7a47b70be96006a41bed255da6d0f4916e34
parent2e331b313fb9aa55c6456f5ea2ad0735cd11a3fd (diff)
Match against core_*.so when looking for core modules.
-rw-r--r--src/configreader.cpp2
-rw-r--r--src/modmanager_static.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/configreader.cpp b/src/configreader.cpp
index 0aedb874d..fa12648aa 100644
--- a/src/configreader.cpp
+++ b/src/configreader.cpp
@@ -691,7 +691,7 @@ void ServerConfig::ApplyModules(User* user)
{
const std::string& modname = i->first;
// Don't remove core_*.so, just remove m_*.so
- if (modname.c_str()[0] == 'c')
+ if (InspIRCd::Match(modname, "core_*.so", ascii_case_insensitive_map))
continue;
if (ServerInstance->Modules->Unload(i->second))
{
diff --git a/src/modmanager_static.cpp b/src/modmanager_static.cpp
index 9a385dd3c..03e240993 100644
--- a/src/modmanager_static.cpp
+++ b/src/modmanager_static.cpp
@@ -136,7 +136,7 @@ void ModuleManager::LoadCoreModules(std::map<std::string, ServiceList>& servicem
for (modmap::const_iterator i = modlist->begin(); i != modlist->end(); ++i)
{
const std::string modname = i->first;
- if (modname[0] == 'c')
+ if (InspIRCd::Match(modname, "core_*.so", ascii_case_insensitive_map))
{
this->NewServices = &servicemap[modname];
Load(modname, true);