]> granicus.if.org Git - mutt/commitdiff
Handle reopen/new_mail when closing mailbox in <imap-logout-all>.
authorKevin McCarthy <kevin@8t8.us>
Wed, 25 Jul 2018 01:12:20 +0000 (18:12 -0700)
committerKevin McCarthy <kevin@8t8.us>
Wed, 25 Jul 2018 01:12:20 +0000 (18:12 -0700)
Other callers, such as OP_QUIT, OP_MAIN_CHANGE_FOLDER, and
OP_MAIN_SYNC_FOLDER handle the case where a sync or close_mailbox
fails due to new mail or a reopen.

OP_MAIN_LOGOUT_ALL appears to have been accidentally missed.  Add a
call to update_index() to properly sort and update vcounts.

curs_main.c

index 1b211961b0e3595fa7c241297bb0624e929db023..99338671bbdd411db351542eb29b835db625fdad 100644 (file)
@@ -1159,8 +1159,12 @@ int mutt_index_menu (void)
       case OP_MAIN_IMAP_LOGOUT_ALL:
        if (Context && Context->magic == MUTT_IMAP)
        {
-         if (mx_close_mailbox (Context, &index_hint) != 0)
+          int check;
+
+         if ((check = mx_close_mailbox (Context, &index_hint)) != 0)
          {
+            if (check == MUTT_NEW_MAIL || check == MUTT_REOPENED)
+              update_index (menu, Context, check, oldcount, index_hint);
            set_option (OPTSEARCHINVALID);
            menu->redraw = REDRAW_FULL;
            break;