From c770c47e18121e93bcdd06b1ab5f161440ffcfe2 Mon Sep 17 00:00:00 2001 From: Adam Date: Sat, 31 Jul 2010 21:37:45 -0400 Subject: Don't dynamically allocate commands in modules anymore, instead made them members of modules. This means the commands are automatically destructed when the module is unloaded. Cleans up some old ugly code. --- modules/core/cs_set_founder.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'modules/core/cs_set_founder.cpp') diff --git a/modules/core/cs_set_founder.cpp b/modules/core/cs_set_founder.cpp index 4fb83a9ec..5daefcba9 100644 --- a/modules/core/cs_set_founder.cpp +++ b/modules/core/cs_set_founder.cpp @@ -16,7 +16,7 @@ class CommandCSSetFounder : public Command { public: - CommandCSSetFounder(const Anope::string &cname, const Anope::string &cpermission = "") : Command(cname, 2, 2, cpermission) + CommandCSSetFounder(const Anope::string &cpermission = "") : Command("FOUNDER", 2, 2, cpermission) { } @@ -89,7 +89,7 @@ class CommandCSSetFounder : public Command class CommandCSSASetFounder : public CommandCSSetFounder { public: - CommandCSSASetFounder(const Anope::string &cname) : CommandCSSetFounder(cname, "chanserv/saset/founder") + CommandCSSASetFounder() : CommandCSSetFounder("chanserv/saset/founder") { } @@ -108,6 +108,9 @@ class CommandCSSASetFounder : public CommandCSSetFounder class CSSetFounder : public Module { + CommandCSSetFounder commandcssetfounder; + CommandCSSASetFounder commandcssasetfounder; + public: CSSetFounder(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator) { @@ -116,22 +119,22 @@ class CSSetFounder : public Module Command *c = FindCommand(ChanServ, "SET"); if (c) - c->AddSubcommand(new CommandCSSetFounder("FOUNDER")); + c->AddSubcommand(&commandcssetfounder); c = FindCommand(ChanServ, "SASET"); if (c) - c->AddSubcommand(new CommandCSSASetFounder("FOUNDER")); + c->AddSubcommand(&commandcssasetfounder); } ~CSSetFounder() { Command *c = FindCommand(ChanServ, "SET"); if (c) - c->DelSubcommand("FOUNDER"); + c->DelSubcommand(&commandcssetfounder); c = FindCommand(ChanServ, "SASET"); if (c) - c->DelSubcommand("FOUNDER"); + c->DelSubcommand(&commandcssasetfounder); } }; -- cgit