X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Fimap%2Fimap_fetch.c;h=9f08131dfb91e94d3882ab75d60a23832351f4ee;hb=8a6b80f677d6a94305b2ba63dd6404b9ea75e6fb;hp=675b642b360e560ca468b1520996bceec144de2d;hpb=e2c939b4e8e7233bc166321125302f604da31d54;p=citadel.git diff --git a/citadel/modules/imap/imap_fetch.c b/citadel/modules/imap/imap_fetch.c index 675b642b3..9f08131df 100644 --- a/citadel/modules/imap/imap_fetch.c +++ b/citadel/modules/imap/imap_fetch.c @@ -587,9 +587,19 @@ void imap_fetch_body(long msgnum, char *item, int is_peek) { lprintf(CTDL_DEBUG, "Section is: %s%s\n", section, IsEmptyStr(section) ? "(empty)" : ""); - if (!strncasecmp(section, "HEADER", 6)) { - need_body = 0; - } + + /* + * We used to have this great optimization in place that would avoid + * fetching the entire RFC822 message from disk if the client was only + * asking for the headers. Unfortunately, fetching only the Citadel + * headers omits "Content-type:" and this behavior breaks the iPhone + * email client. So we have to fetch the whole message from disk. The + * + * if (!strncasecmp(section, "HEADER", 6)) { + * need_body = 0; + * } + * + */ /* Burn the cache if we don't have the same section of the * same message again.