From 16f3f0cbc0f3ad6a150b09b35ac22b65d14ac38e Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 26 Dec 2013 21:06:07 -0500 Subject: Don't leak ldap results --- modules/extra/m_ldap.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules/extra/m_ldap.cpp') 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; } } } -- cgit