summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/u_listmode.h9
-rw-r--r--src/modules/m_banexception.cpp2
-rw-r--r--src/modules/m_chanfilter.cpp2
-rw-r--r--src/modules/m_inviteexception.cpp2
4 files changed, 8 insertions, 7 deletions
diff --git a/include/u_listmode.h b/include/u_listmode.h
index d30da1e5e..a03efce00 100644
--- a/include/u_listmode.h
+++ b/include/u_listmode.h
@@ -48,7 +48,7 @@ class ListModeBase : public ModeHandler
{
protected:
Server* Srv;
-
+ bool tidy;
std::string infokey;
std::string listnumeric;
std::string endoflistnumeric;
@@ -57,8 +57,8 @@ class ListModeBase : public ModeHandler
limitlist chanlimits;
public:
- ListModeBase(Server* serv, char modechar, const std::string &eolstr, const std::string &lnum, const std::string &eolnum, const std::string &ctag = "banlist")
- : ModeHandler(modechar, 1, 1, true, MODETYPE_CHANNEL, false), Srv(serv), listnumeric(lnum), endoflistnumeric(eolnum), endofliststring(eolstr), configtag(ctag)
+ ListModeBase(Server* serv, char modechar, const std::string &eolstr, const std::string &lnum, const std::string &eolnum, bool autotidy, const std::string &ctag = "banlist")
+ : ModeHandler(modechar, 1, 1, true, MODETYPE_CHANNEL, false), Srv(serv), listnumeric(lnum), endoflistnumeric(eolnum), endofliststring(eolstr), tidy(autotidy), configtag(ctag)
{
this->DoRehash();
infokey = "exceptionbase_mode_" + std::string(1, mode) + "_list";
@@ -130,7 +130,8 @@ class ListModeBase : public ModeHandler
}
// Clean the mask up
- ModeParser::CleanMask(parameter);
+ if (this->tidy)
+ ModeParser::CleanMask(parameter);
// Check if the item already exists in the list
for (modelist::iterator it = el->begin(); it != el->end(); it++)
diff --git a/src/modules/m_banexception.cpp b/src/modules/m_banexception.cpp
index 862a6e21c..062194d76 100644
--- a/src/modules/m_banexception.cpp
+++ b/src/modules/m_banexception.cpp
@@ -20,7 +20,7 @@
class BanException : public ListModeBase
{
public:
- BanException(Server* serv) : ListModeBase(serv, 'e', "End of Channel Exception List", "348", "349") { }
+ BanException(Server* serv) : ListModeBase(serv, 'e', "End of Channel Exception List", "348", "349", true) { }
};
diff --git a/src/modules/m_chanfilter.cpp b/src/modules/m_chanfilter.cpp
index 3c278ac44..0ea3ca064 100644
--- a/src/modules/m_chanfilter.cpp
+++ b/src/modules/m_chanfilter.cpp
@@ -31,7 +31,7 @@ using namespace std;
class ChanFilter : public ListModeBase
{
public:
- ChanFilter(Server* serv) : ListModeBase(serv, 'g', "End of channel spamfilter list", "941", "940", "chanfilter") { }
+ ChanFilter(Server* serv) : ListModeBase(serv, 'g', "End of channel spamfilter list", "941", "940", false, "chanfilter") { }
virtual bool ValidateParam(userrec* user, chanrec* chan, std::string &word)
{
diff --git a/src/modules/m_inviteexception.cpp b/src/modules/m_inviteexception.cpp
index d5cb15ea5..5232cfa94 100644
--- a/src/modules/m_inviteexception.cpp
+++ b/src/modules/m_inviteexception.cpp
@@ -22,7 +22,7 @@
class InviteException : public ListModeBase
{
public:
- InviteException(Server* serv) : ListModeBase(serv, 'I', "End of Channel Invite Exception List", "346", "347") { }
+ InviteException(Server* serv) : ListModeBase(serv, 'I', "End of Channel Invite Exception List", "346", "347", true) { }
};
class ModuleInviteException : public Module