From: Howard Chu Date: Mon, 15 Aug 2011 22:40:46 +0000 (-0700) Subject: More for ITS#6892 X-Git-Tag: OPENLDAP_REL_ENG_2_4_27~294 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=8aee88ed603aa27e05292a86401ee2bb77f0126e;p=openldap More for ITS#6892 --- diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c index 1100de79a5..4f0907cd11 100644 --- a/servers/slapd/overlays/syncprov.c +++ b/servers/slapd/overlays/syncprov.c @@ -1304,10 +1304,12 @@ syncprov_matchops( Operation *op, opcookie *opc, int saveit ) op2.o_extra = op->o_extra; op2.o_callback = NULL; if (ss->s_flags & PS_FIX_FILTER) { + Filter *f; /* Skip the AND/GE clause that we stuck on in front. We would lose deletes/mods that happen during the refresh phase otherwise (ITS#6555) */ - op2.ors_filter = ss->s_op->ors_filter->f_and->f_next; + f = ss->s_op->ors_filter->f_and->f_next; + if ( f ) op2.ors_filter = f; } ldap_pvt_thread_mutex_unlock( &ss->s_mutex ); rc = test_filter( &op2, e, op2.ors_filter );