X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fconfigreader.cpp;h=8d705f0cae6b46f99e59fc3fd85e78c7f3096185;hb=7892c8a0313c50d8138942ff3b112691caf05a2f;hp=eaea3f006567fecad841f691794b55d3e9185f83;hpb=2455cd671f4dbc017cf7bb76fb7b29e9f95f3b40;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/configreader.cpp b/src/configreader.cpp index eaea3f006..8d705f0ca 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -442,11 +442,10 @@ static bool ValidateWhoWas(ServerConfig* conf, const char*, const char*, ValueIt conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value less than 3600, setting to default 3600"); } - Command* whowas_command = conf->GetInstance()->Parser->GetHandler("WHOWAS"); - if (whowas_command) + Module* whowas = conf->GetInstance()->Modules->Find("cmd_whowas.so"); + if (whowas) { - std::deque params; - whowas_command->HandleInternal(WHOWAS_PRUNE, params); + WhowasRequest(NULL, whowas, WhowasRequest::WHOWAS_PRUNE).Send(); } return true; @@ -1230,6 +1229,9 @@ void ServerConfig::ApplyModules(User* user) for (std::set::iterator removing = removed_modules.begin(); removing != removed_modules.end(); removing++) { + // Don't remove cmd_*.so, just remove m_*.so + if (removing->c_str()[0] == 'c') + continue; if (ServerInstance->Modules->Unload(removing->c_str())) { ServerInstance->SNO->WriteToSnoMask('a', "*** REHASH UNLOADED MODULE: %s",removing->c_str());