X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=mx.c;h=0d2ec9ce8766248f53b2011c34083a817495734f;hp=0574fa57f25a5468472a07d99c218ed7bb5dfd27;hb=13b3b36c8f696aea26b7c60444f2baa4858b004d;hpb=5799804c55ca89031bd4b7d24691ed461412a5f3 diff --git a/mx.c b/mx.c index 0574fa5..0d2ec9c 100644 --- a/mx.c +++ b/mx.c @@ -487,7 +487,7 @@ static int mx_open_mailbox_append (CONTEXT * ctx, int flags) } return (-1); } - fseek (ctx->fp, 0, 2); + fseeko (ctx->fp, 0, 2); break; case M_MH: @@ -694,7 +694,7 @@ static int trash_append (CONTEXT * ctx) } /* save changes and close mailbox */ -int mx_close_mailbox (CONTEXT * ctx, int *index_hint) +static int _mx_close_mailbox (CONTEXT * ctx, int *index_hint) { int i, move_messages = 0, purge = 1, read_msgs = 0; int check; @@ -899,6 +899,14 @@ int mx_close_mailbox (CONTEXT * ctx, int *index_hint) return 0; } +int mx_close_mailbox (CONTEXT * ctx, int *index_hint) { + int ret = 0; + if (!ctx) + return (0); + ret = _mx_close_mailbox (ctx, index_hint); + sidebar_set_buffystats (ctx); + return (ret); +} /* update a Context structure's internal tables. */ @@ -986,7 +994,7 @@ void mx_update_tables (CONTEXT * ctx, int committing) * 0 success * -1 error */ -int mx_sync_mailbox (CONTEXT * ctx, int *index_hint) +static int _mx_sync_mailbox (CONTEXT * ctx, int *index_hint) { int rc, i; int purge = 1; @@ -1077,9 +1085,6 @@ int mx_sync_mailbox (CONTEXT * ctx, int *index_hint) return 0; } - /* update sidebar counts */ - sidebar_set_buffystats (ctx); - /* if we haven't deleted any messages, we don't need to resort */ /* ... except for certain folder formats which need "unsorted" * sort order in order to synchronize folders. @@ -1102,6 +1107,12 @@ int mx_sync_mailbox (CONTEXT * ctx, int *index_hint) return (rc); } +int mx_sync_mailbox (CONTEXT* ctx, int* index_hint) { + int ret = _mx_sync_mailbox (ctx, index_hint); + sidebar_set_buffystats (ctx); + return (ret); +} + /* args: * dest destintation mailbox * hdr message being copied (required for maildir support, because @@ -1441,7 +1452,6 @@ int mx_rebuild_cache (void) { #else int i = 0, magic = 0; CONTEXT* ctx = NULL; - char* buf = NULL; BUFFY* b = NULL; if (list_empty(Incoming)) { @@ -1449,25 +1459,28 @@ int mx_rebuild_cache (void) { return (1); } - ReadInc = 0; - for (i = 0; i < Incoming->length; i++) { b = (BUFFY*) Incoming->data[i]; magic = mx_get_magic (b->path); - if (magic != M_MAILDIR && magic != M_MH && magic != M_IMAP) + if (magic != M_MAILDIR && magic != M_MH +#ifdef USE_IMAP + && magic != M_IMAP +#endif + ) continue; - buf = str_dup (b->path); - mutt_pretty_mailbox (buf); - mutt_message (_("Rebuilding cache for %s..."), buf); + sidebar_set_current (b->path); + sidebar_draw (CurrentMenu); if ((ctx = mx_open_mailbox (b->path, - M_READONLY | M_QUIET | M_NOSORT | M_COUNT, + M_READONLY | M_NOSORT | M_COUNT, NULL)) != NULL) mx_close_mailbox (ctx, 0); - mem_free (&buf); } - mutt_clear_error (); + if (Context && Context->path) + sidebar_set_current (Context->path); + sidebar_draw (CurrentMenu); + return (0); #endif }