X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fsendsbr.c;h=f8384f7ca8cbd13981af67f5b937b46a380cd9dc;hp=cc15a0f122489a201cf24f7cda06ae7c0aad9641;hb=b8ca332a9752c9de52613a229d95eb7c4c15ac20;hpb=d2da15ecabb03fb2de72863abdf5f21e52fdf329 diff --git a/uip/sendsbr.c b/uip/sendsbr.c index cc15a0f..f8384f7 100644 --- a/uip/sendsbr.c +++ b/uip/sendsbr.c @@ -401,7 +401,7 @@ make_mime_composition_file_entry(char *file_name, int attachformat) if ((p = strrchr(file_name, '.')) != (char *)0) { for (np = m_defs; np; np = np->n_next) { - if (strncasecmp(np->n_name, "mhshow-suffix-", 14) == 0 && strcasecmp(p, np->n_field) == 0) { + if (strncasecmp(np->n_name, "mhshow-suffix-", 14) == 0 && mh_strcasecmp(p, np->n_field) == 0) { content_type = np->n_name + 14; break; } @@ -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: @@ -551,13 +569,13 @@ splitmsg (char **vec, int vecp, char *drft, struct stat *st, int delay) /* * This header field is discarded. */ - if (!strcasecmp (name, "Message-ID")) { + if (!mh_strcasecmp (name, "Message-ID")) { while (state == FLDPLUS) state = m_getfld (state, name, buffer, sizeof(buffer), in); } else if (uprf (name, XXX_FIELD_PRF) - || !strcasecmp (name, VRSN_FIELD) - || !strcasecmp (name, "Subject") - || !strcasecmp (name, "Encrypted")) { + || !mh_strcasecmp (name, VRSN_FIELD) + || !mh_strcasecmp (name, "Subject") + || !mh_strcasecmp (name, "Encrypted")) { /* * These header fields are copied to the enclosed * header of the first message in the collection @@ -566,7 +584,7 @@ splitmsg (char **vec, int vecp, char *drft, struct stat *st, int delay) * version of it, can be copied to the header * of each messsage/partial in the collection. */ - if (!strcasecmp (name, "Subject")) { + if (!mh_strcasecmp (name, "Subject")) { size_t sublen; strncpy (subject, buffer, BUFSIZ);