diff --git a/servers/slapd/back-bdb/filterindex.c b/servers/slapd/back-bdb/filterindex.c index 3583831b2b..791d8769fc 100644 --- a/servers/slapd/back-bdb/filterindex.c +++ b/servers/slapd/back-bdb/filterindex.c @@ -490,6 +490,7 @@ equality_candidates( if( rc == DB_NOTFOUND ) { BDB_IDL_ZERO( ids ); rc = 0; + break; } else if( rc != LDAP_SUCCESS ) { #ifdef NEW_LOGGING LDAP_LOG ( INDEX, RESULTS, diff --git a/servers/slapd/back-bdb/search.c b/servers/slapd/back-bdb/search.c index 91d8c7e501..4d8710d9b3 100644 --- a/servers/slapd/back-bdb/search.c +++ b/servers/slapd/back-bdb/search.c @@ -1420,9 +1420,9 @@ static int oc_filter( return rc; } -static void search_stack_free( void *key, void *data) +static void search_stack_free( void *key, void *data ) { - ch_free(data); + ber_memfree_x(data, NULL); } static void *search_stack(