/*
* 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>
class DummySerializer : public ClientProtocol::Serializer
{
- bool Parse(LocalUser* user, const std::string& line, ClientProtocol::ParseOutput& parseoutput) CXX11_OVERRIDE
- {
- return false;
- }
+ bool Parse(LocalUser* user, const std::string& line, ClientProtocol::ParseOutput& parseoutput) CXX11_OVERRIDE
+ {
+ return false;
+ }
ClientProtocol::SerializedMessage Serialize(const ClientProtocol::Message& msg, const ClientProtocol::TagSelection& tagwl) const CXX11_OVERRIDE
{
/** Restore all modes and extensions of all members on a channel
* @param chan Channel whose members are being restored
- * @param memberdata Data to restore
+ * @param memberdatalist Data to restore
* @param modechange Mode change to populate with prefix modes
*/
void RestoreMemberData(Channel* chan, const std::vector<ChanData::MemberData>& memberdatalist, Modes::ChangeList& modechange);
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)
{
Module* newmod = ServerInstance->Modules->Find(name);
datakeeper.Restore(newmod);
+ ServerInstance->SNO->WriteGlobalSno('a', "The %s module was reloaded.", passedname.c_str());
}
else
+ {
datakeeper.Fail();
+ ServerInstance->SNO->WriteGlobalSno('a', "Failed to reload the %s module.", passedname.c_str());
+ }
- 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")));
+ {
+ if (result)
+ user->WriteNumeric(RPL_LOADEDMODULE, passedname, InspIRCd::Format("The %s module was reloaded.", passedname.c_str()));
+ else
+ user->WriteNumeric(ERR_CANTUNLOADMODULE, passedname, InspIRCd::Format("Failed to reload the %s module.", passedname.c_str()));
+ }
ServerInstance->GlobalCulls.AddItem(this);
}
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;
}
}
else
{
- user->WriteNumeric(RPL_LOADEDMODULE, parameters[0], "Could not find module by that name");
+ user->WriteNumeric(ERR_CANTUNLOADMODULE, parameters[0], "Could not find a loaded module by that name");
return CMD_FAILURE;
}
}