make drv->cancel()'s callback have no status code
this function is not going to actually execute any commands, so it makes no sense for the callback to have a status code.
This commit is contained in:
parent
57444e9df9
commit
9554026443
|
@ -1727,10 +1727,10 @@ imap_list( store_t *gctx,
|
||||||
|
|
||||||
static void
|
static void
|
||||||
imap_cancel( store_t *gctx,
|
imap_cancel( store_t *gctx,
|
||||||
void (*cb)( int sts, void *aux ), void *aux )
|
void (*cb)( void *aux ), void *aux )
|
||||||
{
|
{
|
||||||
(void)gctx;
|
(void)gctx;
|
||||||
cb( DRV_OK, aux );
|
cb( aux );
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -1209,10 +1209,10 @@ maildir_close( store_t *gctx,
|
||||||
|
|
||||||
static void
|
static void
|
||||||
maildir_cancel( store_t *gctx,
|
maildir_cancel( store_t *gctx,
|
||||||
void (*cb)( int sts, void *aux ), void *aux )
|
void (*cb)( void *aux ), void *aux )
|
||||||
{
|
{
|
||||||
(void)gctx;
|
(void)gctx;
|
||||||
cb( DRV_OK, aux );
|
cb( aux );
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -210,7 +210,7 @@ struct driver {
|
||||||
int (*close)( store_t *ctx, /* IMAP-style: expunge inclusive */
|
int (*close)( store_t *ctx, /* IMAP-style: expunge inclusive */
|
||||||
int (*cb)( int sts, void *aux ), void *aux );
|
int (*cb)( int sts, void *aux ), void *aux );
|
||||||
void (*cancel)( store_t *ctx, /* only not yet sent commands */
|
void (*cancel)( store_t *ctx, /* only not yet sent commands */
|
||||||
void (*cb)( int sts, void *aux ), void *aux );
|
void (*cb)( void *aux ), void *aux );
|
||||||
void (*commit)( store_t *ctx );
|
void (*commit)( store_t *ctx );
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
16
src/sync.c
16
src/sync.c
|
@ -396,7 +396,7 @@ stats( sync_vars_t *svars )
|
||||||
static void sync_bail( sync_vars_t *svars );
|
static void sync_bail( sync_vars_t *svars );
|
||||||
static void sync_bail1( sync_vars_t *svars );
|
static void sync_bail1( sync_vars_t *svars );
|
||||||
static void sync_bail2( sync_vars_t *svars );
|
static void sync_bail2( sync_vars_t *svars );
|
||||||
static void cancel_done( int sts, void *aux );
|
static void cancel_done( void *aux );
|
||||||
|
|
||||||
static void
|
static void
|
||||||
cancel_sync( sync_vars_t *svars )
|
cancel_sync( sync_vars_t *svars )
|
||||||
|
@ -405,21 +405,19 @@ cancel_sync( sync_vars_t *svars )
|
||||||
|
|
||||||
/* the 1st round is guaranteed not to trash svars */
|
/* the 1st round is guaranteed not to trash svars */
|
||||||
for (t = 0; t < 2; t++)
|
for (t = 0; t < 2; t++)
|
||||||
if (svars->ret & SYNC_BAD(t))
|
if (svars->ret & SYNC_BAD(t)) {
|
||||||
cancel_done( DRV_STORE_BAD, AUX );
|
svars->drv[t]->cancel_store( svars->ctx[t] );
|
||||||
else
|
cancel_done( AUX );
|
||||||
|
} else {
|
||||||
svars->drv[t]->cancel( svars->ctx[t], cancel_done, AUX );
|
svars->drv[t]->cancel( svars->ctx[t], cancel_done, AUX );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
cancel_done( int sts, void *aux )
|
cancel_done( void *aux )
|
||||||
{
|
{
|
||||||
DECL_INIT_SVARS(aux);
|
DECL_INIT_SVARS(aux);
|
||||||
|
|
||||||
if (sts != DRV_OK) {
|
|
||||||
svars->ret |= SYNC_BAD(t);
|
|
||||||
svars->drv[t]->cancel_store( svars->ctx[t] );
|
|
||||||
}
|
|
||||||
svars->state[t] |= ST_CANCELED;
|
svars->state[t] |= ST_CANCELED;
|
||||||
if (svars->state[1-t] & ST_CANCELED) {
|
if (svars->state[1-t] & ST_CANCELED) {
|
||||||
Fclose( svars->nfp );
|
Fclose( svars->nfp );
|
||||||
|
|
Loading…
Reference in New Issue
Block a user