]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-bdb/idl.c
ITS#3226: Clear attribute flags after schema_check failed
[openldap] / servers / slapd / back-bdb / idl.c
index 09138837267b1e2a4cebc6cb54f9e3d24888b3dd..a7980a3f7abc67aec04a6d97e5f95a47b2c3c8e4 100644 (file)
@@ -58,7 +58,7 @@ bdb_idl_entry_cmp( const void *v_idl1, const void *v_idl2 )
        const bdb_idl_cache_entry_t *idl1 = v_idl1, *idl2 = v_idl2;
        int rc;
 
-       if ((rc = idl1->db - idl2->db )) return rc;
+       if ((rc = SLAP_PTRCMP( idl1->db, idl2->db ))) return rc;
        if ((rc = idl1->kstr.bv_len - idl2->kstr.bv_len )) return rc;
        return ( memcmp ( idl1->kstr.bv_val, idl2->kstr.bv_val , idl1->kstr.bv_len ) );
 }
@@ -568,7 +568,10 @@ bdb_idl_fetch_key(
                return rc2;
        }
 
-       if( rc != 0 && rc != DB_NOTFOUND ) {
+       if( rc == DB_NOTFOUND ) {
+               return rc;
+
+       } else if( rc != 0 ) {
 #ifdef NEW_LOGGING
                LDAP_LOG( INDEX, ERR, 
                        "bdb_idl_fetch_key: get failed: %s (%d)\n",