diff --git a/libraries/libldap/unbind.c b/libraries/libldap/unbind.c index 35a92a8d7e..82bc12db25 100644 --- a/libraries/libldap/unbind.c +++ b/libraries/libldap/unbind.c @@ -129,6 +129,9 @@ ldap_ld_free( ld->ld_abandoned = NULL; } LDAP_MUTEX_UNLOCK( &ld->ld_res_mutex ); + + ber_sockbuf_free( ld->ld_sb ); + LDAP_MUTEX_LOCK( &ld->ld_ldopts_mutex ); /* final close callbacks */ @@ -217,8 +220,6 @@ ldap_ld_free( } LDAP_MUTEX_UNLOCK( &ld->ld_ldopts_mutex ); - ber_sockbuf_free( ld->ld_sb ); - #ifdef LDAP_R_COMPILE ldap_pvt_thread_mutex_destroy( &ld->ld_msgid_mutex ); ldap_pvt_thread_mutex_destroy( &ld->ld_conn_mutex );