]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-ldap/chain.c
Fix corrupted CSN issue
[openldap] / servers / slapd / back-ldap / chain.c
index ffdf61fe5ce01cfedc869b2b3256a0c8c624906b..4b6a24ab57fa96b211f65204f585348de73681c4 100644 (file)
@@ -2,7 +2,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 2003-2008 The OpenLDAP Foundation.
+ * Copyright 2003-2009 The OpenLDAP Foundation.
  * Portions Copyright 2003 Howard Chu.
  * All rights reserved.
  *
@@ -597,6 +597,8 @@ ldap_chain_search(
        struct berval   odn = op->o_req_dn,
                        ondn = op->o_req_ndn;
        slap_response   *save_response = op->o_callback->sc_response;
+       Entry           *save_entry = rs->sr_entry;
+       slap_mask_t     save_flags = rs->sr_flags;
 
        int             rc = LDAP_OTHER,
                        first_rc = -1;
@@ -761,7 +763,8 @@ further_cleanup:;
        op->o_req_ndn = ondn;
        op->o_callback->sc_response = save_response;
        rs->sr_type = REP_SEARCHREF;
-       rs->sr_entry = NULL;
+       rs->sr_entry = save_entry;
+       rs->sr_flags = save_flags;
 
        if ( rc != LDAP_SUCCESS ) {
                /* couldn't chase any of the referrals */