]> diplodocus.org Git - nmh/blobdiff - uip/sendsbr.c
OK, this should work to detect Sun Studio cc.
[nmh] / uip / sendsbr.c
index 10b5f9bd1f99425128b617764e1f5a9bf350f226..73f15b89211f63feff06be18d3b0eb06380d4ce0 100644 (file)
@@ -10,7 +10,6 @@
 #include <h/mh.h>
 #include <h/signals.h>
 #include <setjmp.h>
-#include <signal.h>
 #include <fcntl.h>
 #include <h/mime.h>
 #include <h/tws.h>
@@ -535,13 +534,18 @@ make_mime_composition_file_entry(char *file_name, int attachformat,
             (void) fprintf (composition_file, "#%s <>", content_type);
         } else {
             /* Suppress Content-Id, insert simple Content-Disposition
-               and Content-Description with filename. */
+               and Content-Description with filename.
+               The Content-Disposition type needs to be "inline" for
+               MS Outlook and BlackBerry calendar programs to properly
+               handle a text/calendar attachment. */
             p = strrchr(file_name, '/');
             (void) fprintf (composition_file,
-                            "#%s; name=\"%s\" <> [%s]{attachment}",
+                            "#%s; name=\"%s\" <> [%s]{%s}",
                             content_type,
                             (p == (char *)0) ? file_name : p + 1,
-                            (p == (char *)0) ? file_name : p + 1);
+                            (p == (char *)0) ? file_name : p + 1,
+                            strcmp ("text/calendar", content_type)
+                              ? "attachment" : "inline");
         }
 
         break;
@@ -554,13 +558,19 @@ make_mime_composition_file_entry(char *file_name, int attachformat,
             (void) fprintf (composition_file, "#%s <>", content_type);
         } else {
             /* Suppress Content-Id, insert Content-Disposition with
-               modification date and Content-Description wtih filename. */
+               modification date and Content-Description wtih filename.
+               The Content-Disposition type needs to be "inline" for
+               MS Outlook and BlackBerry calendar programs to properly
+               handle a text/calendar attachment. */
             p = strrchr(file_name, '/');
             (void) fprintf (composition_file,
-                            "#%s; name=\"%s\" <>[%s]{attachment; modification-date=\"%s\"}",
+                            "#%s; name=\"%s\" <>[%s]{%s; "
+                            "modification-date=\"%s\"}",
                             content_type,
                             (p == (char *)0) ? file_name : p + 1,
                             (p == (char *)0) ? file_name : p + 1,
+                            strcmp ("text/calendar", content_type)
+                              ? "attachment" : "inline",
                             dtime (&st.st_mtime, 0));
         }
 
@@ -866,7 +876,6 @@ sendaux (char **vec, int vecp, char *program, char *drft, struct stat *st)
        fprintf (stderr, "unable to exec ");
        perror (postproc);
        _exit (-1);
-       break;  /* NOT REACHED */
 
     default:
        /*
@@ -1136,6 +1145,4 @@ static void
 armed_done (int status)
 {
     longjmp (env, status ? status : NOTOK);
-
-    exit (status);
 }