diff --git a/src/channel/kickban.js b/src/channel/kickban.js index 4d83e01e..c9f306aa 100644 --- a/src/channel/kickban.js +++ b/src/channel/kickban.js @@ -374,12 +374,21 @@ KickBanModule.prototype.banAll = function (actor, name, range, reason, cb) { if (err) { return error(err); } + + var seenIPs = {}; var all = ips.map(function (ip) { if (range === "range") { ip = util.getIPRange(ip); } else if (range === "wrange") { ip = util.getWideIPRange(ip); } + + if (seenIPs.hasOwnProperty(ip)) { + return; + } else { + seenIPs[ip] = true; + } + return Q.nfcall(self.banIP.bind(self), actor, ip, name, reason); });