X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_globalload.cpp;h=aed65045f58d78c9d5577e3a66e6a6834844de64;hb=a5d110282a864fd2e91b51ce360a977cd0643657;hp=f10d7f465197b3c2e2777adc1003bb386d4ef4d0;hpb=2de13e15c26edf4f4a5c0280974b2dea052c1853;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_globalload.cpp b/src/modules/m_globalload.cpp index f10d7f465..aed65045f 100644 --- a/src/modules/m_globalload.cpp +++ b/src/modules/m_globalload.cpp @@ -149,7 +149,12 @@ class CommandGreloadmodule : public Command { Module* m = ServerInstance->Modules->Find(parameters[0]); if (m) - ServerInstance->Modules->Reload(m, new GReloadModuleWorker(user->nick, user->uuid, parameters[0])); + { + GReloadModuleWorker* worker = NULL; + if ((m != creator) && (!creator->dying)) + worker = new GReloadModuleWorker(user->nick, user->uuid, parameters[0]); + ServerInstance->Modules->Reload(m, worker); + } else { user->WriteNumeric(975, "%s %s :Could not find module by that name", user->nick.c_str(), parameters[0].c_str()); @@ -178,9 +183,13 @@ class ModuleGlobalLoad : public Module ModuleGlobalLoad() : cmd1(this), cmd2(this), cmd3(this) { - ServerInstance->AddCommand(&cmd1); - ServerInstance->AddCommand(&cmd2); - ServerInstance->AddCommand(&cmd3); + } + + void init() + { + ServerInstance->Modules->AddService(cmd1); + ServerInstance->Modules->AddService(cmd2); + ServerInstance->Modules->AddService(cmd3); } ~ModuleGlobalLoad()