On Tue, Jun 14, 2016 at 07:54:56AM -0700, Kevin J. McCarthy wrote: > On Tue, Jun 14, 2016 at 08:34:53AM -0400, Aaron Schrab wrote: > > Not sure if this is something that you're already looking into for the > > above-mentioned part 4, but this change causes problems in buffy operation > > for me. > > > > With this change when I switch to a folder with new mail and read all of the > > new messages the folder will remain in the buffy list until I switch to a > > different folder. Even change folder to the same folder it doesn't go away. > > This is with IMAP mailboxes regardless of the setting of $mail_check_stats. > > Thanks for letting me know. I can duplicate this with IMAP and will try > to figure out the problem.
I'll have more time later today to actually test this, but I think this patch should fix the problem. I moved the "new" flag resetting inside the status processing, and somehow missed the *giant* comment saying it wouldn't be statusing the current mailbox. :-) -- Kevin J. McCarthy GPG Fingerprint: 8975 A9B3 3AA3 7910 385C 5308 ADEF 7684 8031 6BDA
# HG changeset patch # User Kevin McCarthy <[email protected]> # Date 1465917219 25200 # Tue Jun 14 08:13:39 2016 -0700 # Node ID a1123c128e7a50bc423b7dbcc62cc90a1f8f5113 # Parent f447c67f511b904f151a25b3cc38cf0d097322e3 [mq]: fix-imap diff --git a/imap/imap.c b/imap/imap.c --- a/imap/imap.c +++ b/imap/imap.c @@ -1521,24 +1521,30 @@ if (mx_is_imap (mailbox->path)) mailbox->magic = MUTT_IMAP; } if (mailbox->magic != MUTT_IMAP) continue; if (imap_get_mailbox (mailbox->path, &idata, name, sizeof (name)) < 0) + { + mailbox->new = 0; continue; + } /* Don't issue STATUS on the selected mailbox, it will be NOOPed or * IDLEd elsewhere. * idata->mailbox may be NULL for connections other than the current * mailbox's, and shouldn't expand to INBOX in that case. #3216. */ if (idata->mailbox && !imap_mxcmp (name, idata->mailbox)) + { + mailbox->new = 0; continue; + } if (!mutt_bit_isset (idata->capabilities, IMAP4REV1) && !mutt_bit_isset (idata->capabilities, STATUS)) { dprint (2, (debugfile, "Server doesn't support STATUS\n")); continue; }
signature.asc
Description: PGP signature
