From: markus schnalke Date: Tue, 1 May 2012 11:53:32 +0000 (+0200) Subject: mhbuild: Removed -contentid switch, which was an Outlook 2002 workaround. X-Git-Tag: mmh-thesis-end~59 X-Git-Url: http://git.marmaro.de/?a=commitdiff_plain;h=e68b1fb49f49b3f68b7a1a5eeb449b2c26b196a8;p=mmh mhbuild: Removed -contentid switch, which was an Outlook 2002 workaround. Explanation: Outlook 2002 won't display attachments that have a Content-ID header. This is a bug in Outlook 2002, not in mhbuild. There used to be this -nocontentid switch to prevent Content-ID headers to be inserted. As I consider it wrong to complicate all other MUAs instead of forcing the developers and users of broken MUAs to fix or change their software, I removed it. You can still workaround the bug in the following way: invoke `e mhbuild' manually at the Whatnow prompt and edit the draft again thereafter, removing the Content-ID headers. Then send it. --- diff --git a/man/mhbuild.man1 b/man/mhbuild.man1 index 32df651..bb5f2d3 100644 --- a/man/mhbuild.man1 +++ b/man/mhbuild.man1 @@ -9,7 +9,6 @@ mhbuild \- translate MIME composition draft .HP 5 .B mhbuild .I file -.RB [ \-contentid " | " \-nocontentid ] .RB [ \-verbose " | " \-noverbose ] .RB [ \-version ] .RB [ \-help ] @@ -252,10 +251,7 @@ By default, will generate a unique \*(lqContent-ID:\*(rq for each directive, corresponding to each message part; however, the user may override this by defining the ID using the \*(lq<\*(rq and \*(lq>\*(rq -characters. The -.B \-nocontentid -switch suppresses creation of all \*(lqContent-ID:\*(rq headers, -even in the top level of the message. +characters. .PP In addition to the various directives, plaintext can be present. Plaintext is gathered, until a directive is found or the draft is @@ -498,10 +494,22 @@ mhlist(1), show(1), mhstore(1), forw(1), .SH DEFAULTS .nf -.RB ` \-contentid ' .RB ` \-noverbose ' .fi .SH CONTEXT If a folder is given, it will become the current folder. The last message selected will become the current message. + +.SH BUGS +Outlook 2002 won't display attachments that have a Content-ID header. +This is a bug in Outlook 2002, not in +.BR mhbuild . +To workaround it, invoke \fIe mhbuild\fP manually at the Whatnow prompt +and edit the draft again thereafter, removing the Content-ID headers. +Then send it. +There used to be a +.B \-nocontentid +switch to prevent Content-ID headers to be inserted, but as it was considerd +wrong to complicate all other MUAs instead of forcing the developers and users +of broken MUAs to fix or change their software, it was removed. diff --git a/uip/mhbuild.c b/uip/mhbuild.c index 0fb5315..67b2e0e 100644 --- a/uip/mhbuild.c +++ b/uip/mhbuild.c @@ -33,15 +33,11 @@ static struct swit switches[] = { { "verbose", 0 }, #define NVERBSW 1 { "noverbose", 0 }, -#define CONTENTIDSW 2 - { "contentid", 0 }, -#define NCONTENTIDSW 3 - { "nocontentid", 0 }, -#define VERSIONSW 4 +#define VERSIONSW 2 { "version", 0 }, -#define HELPSW 5 +#define HELPSW 3 { "help", 0 }, -#define DEBUGSW 6 +#define DEBUGSW 4 { "debug", -5 }, { NULL, 0 } }; @@ -87,8 +83,6 @@ static CT build_mime(char *); int debugsw = 0; int verbosw = 0; -int contentidsw = 1; - /* ** Temporary files */ @@ -159,13 +153,6 @@ main(int argc, char **argv) print_version(invo_name); done(1); - case CONTENTIDSW: - contentidsw = 1; - continue; - case NCONTENTIDSW: - contentidsw = 0; - continue; - case VERBSW: verbosw++; continue; @@ -1553,9 +1540,9 @@ build_headers(CT ct) add_header(ct, np, vp); /* - ** output the Content-ID, unless disabled by -nocontentid + ** output the Content-ID */ - if (contentidsw && ct->c_id) { + if (ct->c_id) { np = getcpy(ID_FIELD); vp = concat(" ", ct->c_id, NULL); add_header(ct, np, vp);