]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10248 Always generate a result on the original op
authorOndřej Kuzník <ondra@mistotebe.net>
Fri, 23 Aug 2024 11:57:34 +0000 (12:57 +0100)
committerQuanah Gibson-Mount <quanah@openldap.org>
Thu, 26 Sep 2024 17:56:59 +0000 (17:56 +0000)
servers/slapd/overlays/translucent.c

index 435047be6c4e4551f90da25969262abe2b971094..e5f7384aa217de0feac8d4f24e36c76ba492ede0 100644 (file)
@@ -802,8 +802,8 @@ static int translucent_search_cb(Operation *op, SlapReply *rs) {
 
        tc = op->o_callback->sc_private;
 
-       /* Don't let the op complete while we're gathering data */
-       if ( rs->sr_type == REP_RESULT && ( tc->step & USE_LIST ))
+       /* We took over the op, don't let it complete yet */
+       if ( rs->sr_type == REP_RESULT )
                return 0;
 
        if(rs->sr_type != REP_SEARCH || !rs->sr_entry)
@@ -1230,9 +1230,9 @@ static int translucent_search(Operation *op, SlapReply *rs) {
                        rs->sr_flags = 0;
                        rs->sr_entry = NULL;
                }
-               send_ldap_result( op, rs );
        }
 
+       send_ldap_result( op, rs );
        op->ors_slimit = tc.slimit;
 
        /* Free in reverse order */