summaryrefslogtreecommitdiff
path: root/src/modules/m_connectban.cpp
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2013-05-06 17:39:24 +0100
committerPeter Powell <petpow@saberuk.com>2013-05-06 17:39:24 +0100
commit6a1892b1c1bdd8e8ecb519933ee9887adb5b8585 (patch)
tree86a2d56675b60a327780b9e00e06a0c811c118bb /src/modules/m_connectban.cpp
parentdc4c8c85f383567aef9325a08515c9890bd89ab8 (diff)
Fix an extremely low risk crash bug in m_connectban.
Diffstat (limited to 'src/modules/m_connectban.cpp')
-rw-r--r--src/modules/m_connectban.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/modules/m_connectban.cpp b/src/modules/m_connectban.cpp
index dc2bc3f18..26120add9 100644
--- a/src/modules/m_connectban.cpp
+++ b/src/modules/m_connectban.cpp
@@ -97,11 +97,12 @@ class ModuleConnectBan : public Module
{
// Create zline for set duration.
ZLine* zl = new ZLine(ServerInstance->Time(), banduration, ServerInstance->Config->ServerName, "Your IP range has been attempting to connect too many times in too short a duration. Wait a while, and you will be able to connect.", mask.str());
- if (ServerInstance->XLines->AddLine(zl,NULL))
- ServerInstance->XLines->ApplyLines();
- else
+ if (!ServerInstance->XLines->AddLine(zl, NULL))
+ {
delete zl;
-
+ return;
+ }
+ ServerInstance->XLines->ApplyLines();
std::string maskstr = mask.str();
std::string timestr = ServerInstance->TimeString(zl->expiry);
ServerInstance->SNO->WriteGlobalSno('x',"Module m_connectban added Z:line on *@%s to expire on %s: Connect flooding",