<<< Date Index >>>     <<< Thread Index >>>

Re: [Mutt] #2897: message counts in mailbox view all zero (IMAP,



#2897: message counts in mailbox view all zero (IMAP, courier)

Changes (by knuta):

  * version:  1.5.17 => 1.5.18

Comment:

 It appears that _mutt_expand_path always appends a trailing slash to the
 folder option when the string does not end with "/" or "}". The code does
 not take into account the possibility of having a "." as a path delimiter
 and using an IMAP subfolder as folder. This is frequently the case if
 using Cyrus, which stores all folders as sub-folders of the INBOX.

 If I simplify my own setup slightly, let's say I have the following in my
 .muttrc:

 {{{
 set folder=imaps://imap.stud.ntnu.no/INBOX.
 mailboxes =Work =Play
 }}}

 I, (and apparently also mutt) would expect this to expand into

 {{{
 mailboxes imaps://imap.stud.ntnu.no/INBOX.Work
 imaps://imap.stud.ntnu.no/INBOX.Play
 }}}

 but instead we get
 {{{
 mailboxes imaps://imap.stud.ntnu.no/INBOX./Work
 imaps://imap.stud.ntnu.no/INBOX./Play
 }}}

 This makes mxcmp() fail when comparing inboxes to Cyrus IMAP folders,
 ultimately causing this bug.

 The small patch I just uploaded makes the test honor the imap_delim_chars
 setting, and not add a trailing slash if the string ends with a delimiter.
 This solves the problem when using mutt against our Cyrus cluster, at
 least.

 With my patch, you are still required to add a trailing "." if using a
 sub-directory with a dot as the delimiter, or else you will end up with a
 slash there instead. This should probably be changed so the proper
 delimiter is read from the server, but I figured I'd keep things simple
 for now.


 As a sidenote, I'd be very happy if mutt-imap_recent.patch was applied. I
 believe it restores the way these things worked in 1.5.11 (which is the
 version I used until today), and this is also more similar to the way mutt
 behaves when using local files. If a way of including "Old" unread
 messages in the count is desired, I'd add a new format string to
 folder_format for this purpose, like for instance %O. But that probably
 belongs in another bugreport (like #2910 or something).

-- 
Ticket URL: <http://dev.mutt.org/trac/ticket/2897#comment:12>