]> granicus.if.org Git - neomutt/commit
Add msn_index and max_msn to find and check boundaries by MSN. (see #3942)
authorKevin McCarthy <kevin@8t8.us>
Sun, 21 May 2017 01:52:18 +0000 (18:52 -0700)
committerRichard Russon <rich@flatcap.org>
Wed, 24 May 2017 01:09:48 +0000 (02:09 +0100)
commitbe7b5b5d910ad657bfb10c9685715bfe54192216
treebb8e3a11ac2ec53022ea8fedb4d45b77924c43d4
parentc585a2a0e5a414c4d4f66f30801f57669a51d97c
Add msn_index and max_msn to find and check boundaries by MSN. (see #3942)

Since there can be gaps in MSNs, the largest MSN in the context is not
necessarily ctx->msgcount.

Use max_msn instead of ctx->msgcount for:
  - the starting MSN of new mail header fetching
  - boundary checking in fetch, expunge, and other places

Use msn_index to efficiently look up headers by MSN.  This makes the
expunge code slightly more efficient.  It also makes FETCH handling, and
duplicate FETCH FLAG handling efficient.
imap/command.c
imap/imap.c
imap/imap_private.h
imap/message.c