]> git.sur5r.net Git - openldap/commitdiff
Revert "ITS#8752 ppolicy: don't call same cleanup twice"
authorHoward Chu <hyc@openldap.org>
Fri, 13 Oct 2017 17:46:18 +0000 (18:46 +0100)
committerHoward Chu <hyc@openldap.org>
Fri, 13 Oct 2017 17:47:25 +0000 (18:47 +0100)
This reverts commit 1c963f473945e9902c1682d917baa58002a9ab95.

Revert "ITS#8752 make sure all cleanups are called in overlay_op_walk"

This reverts commit b0ad788b8aaad7d5e75827dacd4bbba203ae69ff.

servers/slapd/backover.c
servers/slapd/overlays/ppolicy.c

index cc13d77c28543ed808481fecc9881fc429903764..a749fba9195e0f241ae3848763ba1c78162a82df 100644 (file)
@@ -716,7 +716,8 @@ int overlay_op_walk(
        if ( rc == LDAP_UNWILLING_TO_PERFORM ) {
                slap_callback *sc_next;
 cleanup:
-               for ( ; op->o_callback; op->o_callback = sc_next ) {
+               for ( ; op->o_callback && op->o_callback->sc_response !=
+                       over_back_response; op->o_callback = sc_next ) {
                        sc_next = op->o_callback->sc_next;
                        if ( op->o_callback->sc_cleanup ) {
                                op->o_callback->sc_cleanup( op, rs );
index 187feee886935b4bc636482468852fda826cc2d1..e13c33a86629945f9d6e7f571356bfbbbcbf12f7 100644 (file)
@@ -940,7 +940,6 @@ ppolicy_ctrls_cleanup( Operation *op, SlapReply *rs )
        if ( ppb->send_ctrl ) {
                ctrls_cleanup( op, rs, ppb->oldctrls );
        }
-       op->o_callback->sc_cleanup = NULL;
        return SLAP_CB_CONTINUE;
 }