diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c
index 6143eefaf100e4a8a847e0af6a3ae0c433eb4d60..2e30b00cb4764fdca89f4f053a94e429529a3601 100644
--- a/servers/slapd/overlays/syncprov.c
+++ b/servers/slapd/overlays/syncprov.c
@@ -1149,8 +1149,7 @@ syncprov_op_abandon( Operation *op, SlapReply *rs )
 	syncops *so = NULL, **sop;
 
 	ldap_pvt_thread_mutex_lock( &si->si_ops_mutex );
-	for ( sop=&si->si_ops; *sop; sop = &(*sop)->s_next ) {
-		so = *sop;
+	for ( sop=&si->si_ops; (so = *sop); sop = &(*sop)->s_next ) {
 		if ( so->s_op->o_connid == op->o_connid &&
 			so->s_op->o_msgid == op->orn_msgid ) {
 				so->s_op->o_abandon = 1;