case BODY:
fseek (in, (long) (-strlen (buf)), SEEK_CUR);
- /* fall through */
+ /* FALLTHRU */
case FILEEOF:
break;
CT p;
if (user_content (in, buf, &p, infile) == DONE) {
- admonish (NULL, "ignoring spurious #end");
+ inform("ignoring spurious #end, continuing...");
continue;
}
if (!p)
ct->c_encoding = CE_7BIT;
goto call_init;
}
- /* else fall... */
+ /* FALLTHRU */
case CT_MULTIPART:
adios (NULL, "it doesn't make sense to define an in-line %s content",
ct->c_type == CT_MESSAGE ? "message" : "multipart");
/* else, use the current folder */
if (!folder)
- folder = add (getfolder (1), NULL);
+ folder = mh_xstrdup(getfolder(1));
if (!(mp = folder_read (folder, 0)))
adios (NULL, "unable to read folder %s", folder);
pp = &part->mp_next;
part->mp_part = p;
}
- admonish (NULL, "premature end-of-file, missing #end");
+ inform("premature end-of-file, missing #end, continuing...");
return OK;
}
case 'F':
/* %f, and stdout is not-redirected */
xstdout = 1;
- /* and fall... */
+ /* FALLTHRU */
case 'f':
/*
add_header (ct, np, vp);
/*
- * output the Content-ID, unless disabled by -nocontentid
+ * output the Content-ID, unless disabled by -nocontentid. Note that
+ * RFC 2045 always requires a Content-ID header for message/external-body
+ * entities.
*/
- if (contentidsw && ct->c_id) {
+ if ((contentidsw || ct->c_ctexbody) && ct->c_id) {
np = mh_xstrdup(ID_FIELD);
vp = concat (" ", ct->c_id, NULL);
add_header (ct, np, vp);
if (strcasecmp(ct->c_ctinfo.ci_subtype, "external-body") == 0)
adios(NULL, "external-body messages must be specified "
"by mhbuild directives");
- /* Fall through */
+ /* FALLTHRU */
default:
/*
if (cp && strcasecmp (cp, "attachment") &&
strcasecmp (cp, "inline")) {
- admonish (NULL, "configuration problem: %s-disposition-%s%s%s "
- "specifies '%s' but only 'attachment' and 'inline' are "
- "allowed", invo_name,
- ct->c_ctinfo.ci_type,
- ct->c_ctinfo.ci_subtype ? "/" : "",
- ct->c_ctinfo.ci_subtype ? ct->c_ctinfo.ci_subtype : "",
- cp);
+ inform("configuration problem: %s-disposition-%s%s%s specifies "
+ "'%s' but only 'attachment' and 'inline' are allowed, "
+ "continuing...", invo_name,
+ ct->c_ctinfo.ci_type,
+ ct->c_ctinfo.ci_subtype ? "/" : "",
+ ct->c_ctinfo.ci_subtype ? ct->c_ctinfo.ci_subtype : "",
+ cp);
}
if (!cp)
if ((status = show_content_aux (ct, 0, convert_command, NULL, NULL)) !=
OK) {
- admonish (NULL, "store of %s content failed", type);
+ inform("store of %s content failed, continuing...", type);
}
free (convert_command);
if (extract_headers (reply_ct, reply_file, &reply_fp) == NOTOK) {
free (reply_file);
- admonish (NULL,
- "failed to extract headers from convert output in %s",
- reply_file);
+ inform("failed to extract headers from convert output in %s, "
+ "continuing...", reply_file);
return;
}
if ((fd = open (reply_file, O_RDONLY)) == NOTOK ||
scan_input (fd, &eightbit) == NOTOK) {
free (reply_file);
- admonish (NULL, "failed to read %s", reply_file);
+ inform("failed to read %s, continuing...", reply_file);
return;
}
(void) close (fd);
n = strlen (buffer);
if (get_ctinfo (buffer + 14, ct, 0) != OK) {
- admonish (NULL, "unable to get content info for reply");
+ inform("unable to get content info for reply, continuing...");
goto failed_to_extract_ct;
}