]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/coremods/core_reloadmodule.cpp
Ignore moved lines in mkheaders.
[user/henk/code/inspircd.git] / src / coremods / core_reloadmodule.cpp
index b330797d5d093cdfafd795431858f6fd4f2fdcb0..6836cb55cf7bb01391bee6664f6f4281339b58f3 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * InspIRCd -- Internet Relay Chat Daemon
  *
- *   Copyright (C) 2017-2019 Sadie Powell <sadie@witchery.services>
+ *   Copyright (C) 2017-2019, 2021 Sadie Powell <sadie@witchery.services>
  *   Copyright (C) 2014-2016, 2018 Attila Molnar <attilamolnar@hush.com>
  *   Copyright (C) 2012 Robby <robby@chatbelgie.be>
  *   Copyright (C) 2009 Daniel De Graaf <danieldg@inspircd.org>
@@ -720,11 +720,9 @@ class ReloadAction : public ActionBase
                ReloadModule::DataKeeper datakeeper;
                datakeeper.Save(mod);
 
-               DLLManager* dll = mod->ModuleDLLManager;
                std::string name = mod->ModuleSourceFile;
                ServerInstance->Modules->DoSafeUnload(mod);
                ServerInstance->GlobalCulls.Apply();
-               delete dll;
                bool result = ServerInstance->Modules->Load(name);
 
                if (result)
@@ -738,7 +736,10 @@ class ReloadAction : public ActionBase
                ServerInstance->SNO->WriteGlobalSno('a', "RELOAD MODULE: %s %ssuccessfully reloaded", passedname.c_str(), result ? "" : "un");
                User* user = ServerInstance->FindUUID(uuid);
                if (user)
-                       user->WriteNumeric(RPL_LOADEDMODULE, passedname, InspIRCd::Format("Module %ssuccessfully reloaded.", (result ? "" : "un")));
+               {
+                       int numeric = result ? RPL_LOADEDMODULE : ERR_CANTUNLOADMODULE;
+                       user->WriteNumeric(numeric, passedname, InspIRCd::Format("Module %ssuccessfully reloaded.", (result ? "" : "un")));
+               }
 
                ServerInstance->GlobalCulls.AddItem(this);
        }
@@ -749,7 +750,7 @@ CmdResult CommandReloadmodule::Handle(User* user, const Params& parameters)
        Module* m = ServerInstance->Modules->Find(parameters[0]);
        if (m == creator)
        {
-               user->WriteNumeric(RPL_LOADEDMODULE, parameters[0], "You cannot reload core_reloadmodule (unload and load it)");
+               user->WriteNumeric(ERR_CANTUNLOADMODULE, parameters[0], "You cannot reload core_reloadmodule (unload and load it)");
                return CMD_FAILURE;
        }
 
@@ -763,7 +764,7 @@ CmdResult CommandReloadmodule::Handle(User* user, const Params& parameters)
        }
        else
        {
-               user->WriteNumeric(RPL_LOADEDMODULE, parameters[0], "Could not find module by that name");
+               user->WriteNumeric(ERR_CANTUNLOADMODULE, parameters[0], "Could not find module by that name");
                return CMD_FAILURE;
        }
 }