commit ae3a61b668b7a7b88a39471b84edcddab978cc58 Author: Oswald Buddenhagen <o...@users.sf.net> Date: Fri May 20 12:33:51 2022 +0200
clarify / micro-optimize cancel_sync() src/sync.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/sync.c b/src/sync.c index 9de140e9..532ff0eb 100644 --- a/src/sync.c +++ b/src/sync.c @@ -604,10 +604,8 @@ static void cancel_done( void *aux ); static void cancel_sync( sync_vars_t *svars ) { - int t; - - for (t = 0; t < 2; t++) { - int other_state = svars->state[1-t]; + int state1 = svars->state[1]; + for (int t = 0; ; t++) { if (svars->ret & SYNC_BAD(t)) { cancel_done( AUX ); } else if (!(svars->state[t] & ST_SENT_CANCEL)) { @@ -615,7 +613,7 @@ cancel_sync( sync_vars_t *svars ) svars->state[t] |= ST_SENT_CANCEL; svars->drv[t]->cancel_cmds( svars->ctx[t], cancel_done, AUX ); } - if (other_state & ST_CANCELED) + if (t || (state1 & ST_CANCELED)) break; } } _______________________________________________ isync-devel mailing list isync-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/isync-devel