diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c index b2b0b83a97..945a0d370c 100644 --- a/src/backend/libpq/auth.c +++ b/src/backend/libpq/auth.c @@ -2566,7 +2566,8 @@ CheckLDAPAuth(Port *port) return STATUS_ERROR; } } - + + search_message = NULL; /* * Bind with a pre-defined username/password (if available) for * searching. If none is specified, this turns into an anonymous bind. @@ -2610,6 +2611,8 @@ CheckLDAPAuth(Port *port) filter, server_name, ldap_err2string(r)), errdetail_for_ldap(ldap))); ldap_unbind(ldap); + if (search_message != NULL) + ldap_msgfree(search_message); pfree(passwd); pfree(filter); return STATUS_ERROR;