summaryrefslogtreecommitdiff
path: root/modules/extra/m_ldap.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2013-12-26 21:06:07 -0500
committerAdam <Adam@anope.org>2013-12-26 21:06:07 -0500
commit16f3f0cbc0f3ad6a150b09b35ac22b65d14ac38e (patch)
tree625e57b9f5012de102b0464a4f9a6dfc5ff3c809 /modules/extra/m_ldap.cpp
parentb28db7bc551bd011f05d39328ec95c39df065fcd (diff)
Don't leak ldap results
Diffstat (limited to 'modules/extra/m_ldap.cpp')
-rw-r--r--modules/extra/m_ldap.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/modules/extra/m_ldap.cpp b/modules/extra/m_ldap.cpp
index 01e927633..1fc8460f7 100644
--- a/modules/extra/m_ldap.cpp
+++ b/modules/extra/m_ldap.cpp
@@ -497,8 +497,13 @@ class ModuleLDAP : public Module, public Pipe
for (unsigned i = s->results.size(); i > 0; --i)
{
LDAPInterface *li = s->results[i - 1].first;
+ LDAPResult *r = s->results[i - 1].second;
+
if (li->owner == m)
+ {
s->results.erase(s->results.begin() + i - 1);
+ delete r;
+ }
}
s->Unlock();
}
@@ -524,6 +529,8 @@ class ModuleLDAP : public Module, public Pipe
li->OnError(*r);
else
li->OnResult(*r);
+
+ delete r;
}
}
}