summaryrefslogtreecommitdiff
path: root/src/coremods/core_xline/cmd_eline.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/coremods/core_xline/cmd_eline.cpp')
-rw-r--r--src/coremods/core_xline/cmd_eline.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/coremods/core_xline/cmd_eline.cpp b/src/coremods/core_xline/cmd_eline.cpp
index 0cb52298c..a3a4d9466 100644
--- a/src/coremods/core_xline/cmd_eline.cpp
+++ b/src/coremods/core_xline/cmd_eline.cpp
@@ -58,7 +58,12 @@ CmdResult CommandEline::Handle(User* user, const Params& parameters)
if (InsaneBan::MatchesEveryone(ih.first+"@"+ih.second, matcher, user, "E", "hostmasks"))
return CMD_FAILURE;
- unsigned long duration = InspIRCd::Duration(parameters[1]);
+ unsigned long duration;
+ if (!InspIRCd::Duration(parameters[1], duration))
+ {
+ user->WriteNotice("*** Invalid duration for E-line");
+ return CMD_FAILURE;
+ }
ELine* el = new ELine(ServerInstance->Time(), duration, user->nick.c_str(), parameters[2].c_str(), ih.first.c_str(), ih.second.c_str());
if (ServerInstance->XLines->AddLine(el, user))
{