]> git.sur5r.net Git - openldap/commitdiff
Fix three value logic
authorKurt Zeilenga <kurt@openldap.org>
Sat, 23 Jun 2001 02:26:09 +0000 (02:26 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Sat, 23 Jun 2001 02:26:09 +0000 (02:26 +0000)
servers/slapd/filterentry.c

index 34cf68d6587aa9a2f10446f682680918364961ff..83edbc6bb42172d2d161f4290db27bfb23de3f9c 100644 (file)
@@ -351,9 +351,10 @@ test_filter_and(
                int rc = test_filter( be, conn, op, e, f );
 
                if ( rc == LDAP_COMPARE_FALSE ) {
-                       rtn = LDAP_COMPARE_FALSE;
+                       rtn = rc;
                        break;
                }
+
                if ( rc != LDAP_COMPARE_TRUE ) {
                        rtn = rc;
                }
@@ -393,10 +394,11 @@ test_filter_or(
                int rc = test_filter( be, conn, op, e, f );
 
                if ( rc == LDAP_COMPARE_TRUE ) {
-                       rtn = LDAP_COMPARE_TRUE;
+                       rtn = rc;
                        break;
                }
-               if ( rc != LDAP_COMPARE_TRUE ) {
+
+               if ( rc != LDAP_COMPARE_FALSE ) {
                        rtn = rc;
                }
        }