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;