X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fsearch.c;h=4699633403c4bc08a846577bab2b3e535aaefb2a;hb=416aeb9347609866126a71de112afdefdff829bf;hp=9b4492ea115b3f289e663e57adfe15b7caf12588;hpb=f5e6d1db410c11b26dfe5ef2e5563f51e136c830;p=openldap diff --git a/servers/slapd/search.c b/servers/slapd/search.c index 9b4492ea11..4699633403 100644 --- a/servers/slapd/search.c +++ b/servers/slapd/search.c @@ -322,12 +322,17 @@ do_search( } return_results:; - if( pbase.bv_val != NULL) free( pbase.bv_val ); - if( nbase.bv_val != NULL) free( nbase.bv_val ); +#ifdef LDAP_CLIENT_UPDATE + if ( !( op->o_clientupdate_type & SLAP_LCUP_PERSIST ) ) +#endif /* LDAP_CLIENT_UPDATE */ + { + if( pbase.bv_val != NULL) free( pbase.bv_val ); + if( nbase.bv_val != NULL) free( nbase.bv_val ); - if( fstr.bv_val != NULL) free( fstr.bv_val ); - if( filter != NULL) filter_free( filter ); - if( an != NULL ) free( an ); + if( fstr.bv_val != NULL) free( fstr.bv_val ); + if( filter != NULL) filter_free( filter ); + if( an != NULL ) free( an ); + } return rc; }