From c66afdc0a85587818b90cd8a7d1ea648e90f08cf Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Mon, 13 Jun 2011 12:02:00 +0200 Subject: [PATCH] move setting of ctx->listed outside the drivers it's essentially an external state flag --- src/drv_imap.c | 5 +---- src/drv_maildir.c | 1 - src/main.c | 1 + 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/drv_imap.c b/src/drv_imap.c index 5d229b8..5b6e469 100644 --- a/src/drv_imap.c +++ b/src/drv_imap.c @@ -1737,11 +1737,8 @@ imap_list( store_t *gctx, void (*cb)( int sts, void *aux ), void *aux ) { imap_store_t *ctx = (imap_store_t *)gctx; - int ret; - if ((ret = imap_exec_b( ctx, 0, "LIST \"\" \"%s%%\"", ctx->prefix )) == DRV_OK) - gctx->listed = 1; - cb( ret, aux ); + cb( imap_exec_b( ctx, 0, "LIST \"\" \"%s%%\"", ctx->prefix ), aux ); } static void diff --git a/src/drv_maildir.c b/src/drv_maildir.c index 09d5e5f..020da73 100644 --- a/src/drv_maildir.c +++ b/src/drv_maildir.c @@ -186,7 +186,6 @@ maildir_list( store_t *gctx, !memcmp( buf, inbox, bl - 4 ) && !inbox[bl - 4] ? "INBOX" : de->d_name ); } closedir (dir); - gctx->listed = 1; cb( DRV_OK, aux ); } diff --git a/src/main.c b/src/main.c index 7899a0e..5156212 100644 --- a/src/main.c +++ b/src/main.c @@ -705,6 +705,7 @@ store_listed( int sts, void *aux ) mvars->state[t] = ST_OPEN; switch (sts) { case DRV_OK: + mvars->ctx[t]->listed = 1; if (mvars->ctx[t]->conf->map_inbox) add_string_list( &mvars->ctx[t]->boxes, mvars->ctx[t]->conf->map_inbox ); break;