X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=mh.c;h=7028dbfb62fb76805c0d086eb354b5a141ab5f69;hb=f044ea2a9cec83bdefd1fa423da658bb88291e5a;hp=a26579e55b7b624bc9d3028b6c7bfb9c7f2f528c;hpb=c3e57678c8be193fc137854020f3a90887be97c9;p=apps%2Fmadmutt.git diff --git a/mh.c b/mh.c index a26579e..7028dbf 100644 --- a/mh.c +++ b/mh.c @@ -24,6 +24,10 @@ #include "buffy.h" #include "sort.h" +#include "lib/mem.h" +#include "lib/intl.h" +#include "lib/str.h" + #include #include #include @@ -38,11 +42,17 @@ #include #include +#if HAVE_SYS_TIME_H +#include +#endif + struct maildir { HEADER *h; char *canon_fname; unsigned header_parsed:1; +#ifdef USE_INODESORT ino_t inode; +#endif /* USE_INODESORT */ struct maildir *next; }; @@ -628,7 +638,9 @@ static int maildir_parse_entry (CONTEXT * ctx, struct maildir ***last, entry = safe_calloc (sizeof (struct maildir), 1); entry->h = h; entry->header_parsed = (ctx->magic == M_MH); +#ifdef USE_INODESORT entry->inode = inode; +#endif /* USE_INODESORT */ **last = entry; *last = &entry->next; @@ -738,6 +750,7 @@ static int maildir_move_to_context (CONTEXT * ctx, struct maildir **md) return r; } +#ifdef USE_INODESORT /* * Merge two maildir lists according to the inode numbers. */ @@ -814,6 +827,7 @@ static struct maildir *maildir_sort_inode (struct maildir *list) right = maildir_sort_inode (right); return maildir_merge_inode (left, right); } +#endif /* USE_INODESORT */ #if USE_HCACHE static size_t maildir_hcache_keylen (const char *fn) @@ -921,7 +935,9 @@ int mh_read_dir (CONTEXT * ctx, const char *subdir) mhs_free_sequences (&mhs); } +#ifdef USE_INODESORT md = maildir_sort_inode (md); +#endif /* USE_INODESORT */ if (ctx->magic == M_MAILDIR) maildir_delayed_parsing (ctx, md); @@ -980,7 +996,7 @@ static void maildir_flags (char *dest, size_t destlen, HEADER * hdr) hdr->read ? "S" : "", hdr->deleted ? "T" : "", NONULL (hdr->maildir_flags)); if (hdr->maildir_flags) - qsort (tmp, strlen (tmp), 1, ch_compar); + qsort (tmp, mutt_strlen (tmp), 1, ch_compar); snprintf (dest, destlen, ":2,%s", tmp); } }