diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/commands/cmd_rehash.cpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/commands/cmd_rehash.cpp b/src/commands/cmd_rehash.cpp index e34051611..b58d6035a 100644 --- a/src/commands/cmd_rehash.cpp +++ b/src/commands/cmd_rehash.cpp @@ -49,18 +49,19 @@ CmdResult CommandRehash::Handle (const std::vector<std::string>& parameters, Use ServerInstance->PI->SendUserNotice(user, std::string("*** Rehashing server ") + ServerInstance->ConfigFileName); - std::string m = user->nick + " is rehashing config file " + ServerConfig::CleanFilename(ServerInstance->ConfigFileName) + " on " + ServerInstance->Config->ServerName; - ServerInstance->SNO->WriteToSnoMask('a', m); + if (!ServerInstance->ConfigThread) + { + std::string m = user->nick + " is rehashing config file " + ServerConfig::CleanFilename(ServerInstance->ConfigFileName) + " on " + ServerInstance->Config->ServerName; + ServerInstance->SNO->WriteGlobalSno('a', m); + + /* Don't do anything with the logs here -- logs are restarted + * after the config thread has completed. + */ - /* Don't do anything with the logs here -- logs are restarted - * after the config thread has completed. - */ + ServerInstance->RehashUsersAndChans(); + FOREACH_MOD(I_OnGarbageCollect, OnGarbageCollect()); - ServerInstance->RehashUsersAndChans(); - FOREACH_MOD(I_OnGarbageCollect, OnGarbageCollect()); - if (!ServerInstance->ConfigThread) - { ServerInstance->Config->RehashUserUID = user->uuid; ServerInstance->Config->RehashParameter = parameters.size() ? parameters[0] : ""; |