#include <lib-lib/str.h>
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
-#include <lib-lib/debug.h>
#include <lib-sys/exit.h>
#include <lib-sys/mutt_signal.h>
static void transform_to_7bit (BODY * a, FILE * fpin);
-static void encode_quoted (FGETCONV * fc, FILE * fout, int istext)
+static void encode_quoted (fgetconv_t * fc, FILE * fout, int istext)
{
int c, linelen = 0;
char line[77], savechar;
}
-static void encode_base64 (FGETCONV * fc, FILE * fout, int istext)
+static void encode_base64 (fgetconv_t * fc, FILE * fout, int istext)
{
int ch, ch1 = EOF;
fputc ('\n', fout);
}
-static void encode_8bit (FGETCONV * fc, FILE * fout, int istext)
+static void encode_8bit (fgetconv_t * fc, FILE * fout, int istext)
{
int ch;
int mutt_write_mime_header (BODY * a, FILE * f)
{
- PARAMETER *p;
char buffer[STRING];
char *t;
char *fn;
fprintf (f, "Content-Type: %s/%s", TYPE (a), a->subtype);
if (a->parameter) {
+ PARAMETER *p;
+
len = 25 + m_strlen(a->subtype); /* approximate len. of content-type */
for (p = a->parameter; p; p = p->next) {
char send_charset[SHORT_STRING];
FILE *fpin;
BODY *t;
- FGETCONV *fc;
+ fgetconv_t *fc;
if (a->type == TYPEMULTIPART) {
/* First, find the boundary to use */
if (!(p = mutt_get_parameter ("boundary", a->parameter))) {
- debug_print (1, ("no boundary parameter found!\n"));
mutt_error _("No boundary parameter found! [report this error]");
return (-1);
}
if ((fpin = fopen (a->filename, "r")) == NULL) {
- debug_print (1, ("%s no longer exists!\n", a->filename));
mutt_error (_("%s no longer exists!"), a->filename);
return -1;
}
ssize_t *score;
cd1 = mutt_iconv_open ("UTF-8", fromcode, 0);
- if (cd1 == (iconv_t) (-1))
+ if (cd1 == MUTT_ICONV_ERROR)
return -1;
cd = p_new(iconv_t, ncodes);
cd[i] = mutt_iconv_open (tocodes[i], "UTF-8", 0);
else
/* Special case for conversion to UTF-8 */
- cd[i] = (iconv_t) (-1), score[i] = -1;
+ cd[i] = MUTT_ICONV_ERROR, score[i] = -1;
rewind (file);
ibl = 0;
ib = bufi;
ob = bufu, obl = sizeof (bufu);
n = my_iconv(cd1, ibl ? &ib : 0, &ibl, &ob, &obl);
- assert (n == -1 || !n || ICONV_NONTRANS);
+ assert (n == -1 || !n);
if (n == -1 &&
((errno != EINVAL && errno != E2BIG) || ib == bufi)) {
assert (errno == EILSEQ ||
/* Convert from UTF-8 */
for (i = 0; i < ncodes; i++)
- if (cd[i] != (iconv_t) (-1) && score[i] != -1) {
+ if (cd[i] != MUTT_ICONV_ERROR && score[i] != -1) {
ub = bufu, ubl = ubl1;
ob = bufo, obl = sizeof (bufo);
n = my_iconv(cd[i], (ibl || ubl) ? &ub : 0, &ubl, &ob, &obl);
update_content_info (&infos[i], &states[i], bufo, ob - bufo);
}
}
- else if (cd[i] == (iconv_t) (-1) && score[i] == -1)
+ else if (cd[i] == MUTT_ICONV_ERROR && score[i] == -1)
/* Special case for conversion to UTF-8 */
update_content_info (&infos[i], &states[i], bufu, ubl1);
/* Find best score */
ret = -1;
for (i = 0; i < ncodes; i++) {
- if (cd[i] == (iconv_t) (-1) && score[i] == -1) {
+ if (cd[i] == MUTT_ICONV_ERROR && score[i] == -1) {
/* Special case for conversion to UTF-8 */
*tocode = i;
ret = 0;
break;
}
- else if (cd[i] == (iconv_t) (-1) || score[i] == -1)
+ else if (cd[i] == MUTT_ICONV_ERROR || score[i] == -1)
continue;
else if (ret == -1 || score[i] < ret) {
*tocode = i;
}
for (i = 0; i < ncodes; i++)
- if (cd[i] != (iconv_t) (-1))
+ if (cd[i] != MUTT_ICONV_ERROR)
iconv_close (cd[i]);
iconv_close (cd1);
}
if ((fp = fopen (fname, "r")) == NULL) {
- debug_print (1, ("%s: %s (errno %d).\n", fname, strerror (errno), errno));
return (NULL);
}
convert_file_from_to (fp, fchs, chs ? chs : SendCharset,
&fromcode, &tocode, info) != -1) {
if (!chs) {
- mutt_canonical_charset (chsbuf, sizeof (chsbuf), tocode);
+ charset_canonicalize (chsbuf, sizeof (chsbuf), tocode);
mutt_set_parameter ("charset", chsbuf, &b->parameter);
}
b->file_charset = fromcode;
if (b != NULL && b->type == TYPETEXT && (!b->noconv && !b->force_charset))
mutt_set_parameter ("charset", (!info->hibin ? "us-ascii" :
Charset
- && !mutt_is_us_ascii (Charset) ? Charset :
+ && !charset_is_us_ascii (Charset) ? Charset :
"unknown-8bit"), &b->parameter);
return info;
m_strcpy(buf, sizeof(buf), SYSCONFDIR "/mime.types");
break;
default:
- debug_print (1, ("Internal error, count = %d.\n", count));
goto bye; /* shouldn't happen */
}
p = mutt_get_parameter ("charset", b->parameter);
if (p)
- mutt_canonical_charset (d, dlen, NONULL (p));
+ charset_canonicalize (d, dlen, NONULL (p));
else
m_strcpy(d, dlen, "us-ascii");
char chsbuff[STRING];
/* override noconv when it's us-ascii */
- if (mutt_is_us_ascii (mutt_get_body_charset (chsbuff, sizeof (chsbuff), a)))
+ if (charset_is_us_ascii (mutt_get_body_charset (chsbuff, sizeof (chsbuff), a)))
a->noconv = 0;
if (!a->force_charset && !a->noconv)
}
if (dup) {
- debug_print (2, ("Removing %s\n", addr->mailbox));
-
*last = addr->next;
addr->next = NULL;
set_noconv_flags (hdr->content, 1);
if (mx_open_mailbox (path, M_APPEND | M_QUIET, &f) == NULL) {
- debug_print (1, ("unable to open mailbox %s in append-mode, aborting.\n", path));
return (-1);
}
fflush (tempfp);
if (ferror (tempfp)) {
- debug_print (1, ("%s: write failed.\n", tempfile));
fclose (tempfp);
unlink (tempfile);
mx_commit_message (msg, &f); /* XXX - really? */