diff --git a/servers/slapd/back-bdb/search.c b/servers/slapd/back-bdb/search.c index 0810625ada18c3764545946b665623d3b406c5dc..1635bbd87c55d49d43f23a812bff492d53eb808f 100644 --- a/servers/slapd/back-bdb/search.c +++ b/servers/slapd/back-bdb/search.c @@ -731,16 +731,19 @@ static int oc_filter( switch(f->f_choice) { case LDAP_FILTER_PRESENT: - if (f->f_desc == slap_schema.si_ad_objectClass) + if (f->f_desc == slap_schema.si_ad_objectClass) { rc = 1; + } break; case LDAP_FILTER_AND: case LDAP_FILTER_OR: cur++; - for (f=f->f_and; f; f=f->f_next) - rc |= oc_filter(f, cur, max); + for (f=f->f_and; f; f=f->f_next) { + (void) oc_filter(f, cur, max); + } break; + default: break; }