summaryrefslogtreecommitdiff
path: root/modules/commands/os_chankill.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/commands/os_chankill.cpp')
-rw-r--r--modules/commands/os_chankill.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/modules/commands/os_chankill.cpp b/modules/commands/os_chankill.cpp
index 48ad2a865..56b5f6b33 100644
--- a/modules/commands/os_chankill.cpp
+++ b/modules/commands/os_chankill.cpp
@@ -76,7 +76,11 @@ class CommandOSChanKill : public Command
if (uc->user->server == Me || uc->user->HasMode("OPER"))
continue;
- XLine *x = new XLine("*@" + uc->user->host, source.GetNick(), expires, realreason, XLineManager::GenerateUID());
+ Anope::string akillmask = "*@" + uc->user->host;
+ if (akills->HasEntry(akillmask))
+ continue;
+
+ XLine *x = new XLine(akillmask, source.GetNick(), expires, realreason, XLineManager::GenerateUID());
akills->AddXLine(x);
akills->OnMatch(uc->user, x);
}