From b8ca332a9752c9de52613a229d95eb7c4c15ac20 Mon Sep 17 00:00:00 2001 From: David Levine Date: Thu, 30 Mar 2006 22:19:50 +0000 Subject: [PATCH] * uip/sendsbr.c: with attachformat values of 1 or 2, only generate Content-Disposition headers for MIME attachments, not for the message contents themselves. Microsoft Outlook Build 10.0.6626, at least, doesn't show the message contents if they have Content-Disposition. --- ChangeLog | 8 ++++++++ uip/sendsbr.c | 34 ++++++++++++++++++++++++++-------- 2 files changed, 34 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0eaa651..b2ebfe6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-03-30 David Levine + + * uip/sendsbr.c: with attachformat values of 1 or 2, only + generate Content-Disposition headers for MIME attachments, not + for the message contents themselves. Microsoft Outlook Build + 10.0.6626, at least, doesn't show the message contents if they + have Content-Disposition. + 2006-03-09 Josh Bressers * sbr/fmt_rfc2047.c (decode_rfc2047): Don't close the iconv descriptor diff --git a/uip/sendsbr.c b/uip/sendsbr.c index 8930857..f8384f7 100644 --- a/uip/sendsbr.c +++ b/uip/sendsbr.c @@ -489,17 +489,35 @@ make_mime_composition_file_entry(char *file_name, int attachformat) break; case 1: - /* Suppress Content-Id, insert simple Content-Disposition. */ - (void) fprintf (composition_file, "#%s <>{attachment}", content_type); + if (stringdex (m_maildir(invo_name), file_name) == 0) { + /* Content had been placed by send into a temp file. + Don't generate Content-Disposition header, because + it confuses Microsoft Outlook, Build 10.0.6626, at + least. */ + (void) fprintf (composition_file, "#%s <>", content_type); + } else { + /* Suppress Content-Id, insert simple Content-Disposition. */ + (void) fprintf (composition_file, + "#%s <>{attachment}", + content_type); + } break; case 2: - /* Suppress Content-Id, insert Content-Disposition with - modification date. */ - (void) fprintf (composition_file, - "#%s <>{attachment; modification-date=\"%s\"}", - content_type, - dtime (&st.st_mtime, 0)); + if (stringdex (m_maildir(invo_name), file_name) == 0) { + /* Content had been placed by send into a temp file. + Don't generate Content-Disposition header, because + it confuses Microsoft Outlook, Build 10.0.6626, at + least. */ + (void) fprintf (composition_file, "#%s <>", content_type); + } else { + /* Suppress Content-Id, insert Content-Disposition with + modification date. */ + (void) fprintf (composition_file, + "#%s <>{attachment; modification-date=\"%s\"}", + content_type, + dtime (&st.st_mtime, 0)); + } break; default: -- 1.7.10.4