#3942: mutt with hanging on large Exchange "Deleted Messages" folder
-----------------------+---------------------
  Reporter:  wyardley  |      Owner:  brendan
      Type:  defect    |     Status:  new
  Priority:  major     |  Milestone:
 Component:  IMAP      |    Version:  1.8.2
Resolution:            |   Keywords:
-----------------------+---------------------

Comment (by Kevin McCarthy <kevin@…>):

 In [changeset:"27bb55faa0241a3b011a29306ace0b23ac04df87"
 7047:27bb55faa024]:
 {{{
 #!CommitTicketReference repository=""
 revision="27bb55faa0241a3b011a29306ace0b23ac04df87"
 Move the IMAP msn field to IMAP_HEADER_DATA. (see #3942)

 Ticket 3942 revealed that it is possible for a FETCH to have gaps in
 the MSN numbers of the results.  The code makes many assumptions that
 equate context index counts and MSN.  This is the first in a series of
 commits fixing that assumption.

 The header->index field is supposed to hold the SORT_ORDER index
 number of the message.  If there are gaps in the MSN, than the highext
 MSN can in fact be out of the range 0..ctx->msgcount-1.

 After studying the code, I believe curs_main.c would actually work
 with header->index values out of the range, at least for IMAP.  But
 some other parts of the code, such as mutt_reopen_mailbox(), do rely
 on the values being a valid index to ctx->hdrs[].  And the
 intertwining of menu->oldcurrent with header->index values makes me
 nervous about future changes.

 So, to be safe, move the MSN to its own field in IMAP_HEADER_DATA.

 The next commit will fix the EXPUNGE behavior.
 }}}

--
Ticket URL: <https://dev.mutt.org/trac/ticket/3942#comment:3>
Mutt <http://www.mutt.org/>
The Mutt mail user agent

Reply via email to