aboutsummaryrefslogtreecommitdiffstats
path: root/em-format/e-mail-formatter-utils.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2013-06-07 02:08:21 +0800
committerMatthew Barnes <mbarnes@redhat.com>2013-06-07 02:08:21 +0800
commit863fee647958686bce10a0e0a499b78e72d64a41 (patch)
treeda32ced8b069a0c214c83168cae26cc89f1f4725 /em-format/e-mail-formatter-utils.c
parent312d230cd2493ddfb2581d1ed90e688e6d099fb9 (diff)
downloadgsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.tar
gsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.tar.gz
gsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.tar.bz2
gsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.tar.lz
gsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.tar.xz
gsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.tar.zst
gsoc2013-evolution-863fee647958686bce10a0e0a499b78e72d64a41.zip
e_mail_formatter_format_header: Split the header param.
Split the _camel_header_raw struct parameter into separate "header_name" and "header_value" string parameters, which is all the function actually needs to work.
Diffstat (limited to 'em-format/e-mail-formatter-utils.c')
-rw-r--r--em-format/e-mail-formatter-utils.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/em-format/e-mail-formatter-utils.c b/em-format/e-mail-formatter-utils.c
index 409e2c6314..f3f6f24a20 100644
--- a/em-format/e-mail-formatter-utils.c
+++ b/em-format/e-mail-formatter-utils.c
@@ -273,7 +273,8 @@ e_mail_formatter_canon_header_name (gchar *name)
void
e_mail_formatter_format_header (EMailFormatter *formatter,
GString *buffer,
- struct _camel_header_raw *header,
+ const gchar *header_name,
+ const gchar *header_value,
guint32 flags,
const gchar *charset)
{
@@ -285,10 +286,11 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
g_return_if_fail (E_IS_MAIL_FORMATTER (formatter));
g_return_if_fail (buffer != NULL);
- g_return_if_fail (header != NULL);
+ g_return_if_fail (header_name != NULL);
+ g_return_if_fail (header_value != NULL);
- name = g_alloca (strlen (header->name) + 1);
- strcpy (name, header->name);
+ name = g_alloca (strlen (header_name) + 1);
+ strcpy (name, header_name);
e_mail_formatter_canon_header_name (name);
for (i = 0; addrspec_hdrs[i]; i++) {
@@ -310,7 +312,7 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
if (charset == NULL)
charset = e_mail_formatter_dup_default_charset (formatter);
- buf = camel_header_unfold (header->value);
+ buf = camel_header_unfold (header_value);
addrs = camel_header_address_decode (buf, charset);
if (addrs == NULL) {
g_free (charset);
@@ -342,7 +344,7 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
flags |= E_MAIL_FORMATTER_HEADER_FLAG_BOLD;
} else if (g_str_equal (name, "Subject")) {
- buf = camel_header_unfold (header->value);
+ buf = camel_header_unfold (header_value);
txt = value = camel_header_decode_string (buf, charset);
g_free (buf);
@@ -351,7 +353,7 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
} else if (g_str_equal (name, "X-evolution-mailer")) {
/* pseudo-header */
label = _("Mailer");
- txt = value = camel_header_format_ctext (header->value, charset);
+ txt = value = camel_header_format_ctext (header_value, charset);
flags |= E_MAIL_FORMATTER_HEADER_FLAG_BOLD;
} else if (g_str_equal (name, "Date") || g_str_equal (name, "Resent-Date")) {
@@ -364,7 +366,7 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
hide_real_date = !e_mail_formatter_get_show_real_date (formatter);
- txt = header->value;
+ txt = header_value;
while (*txt == ' ' || *txt == '\t')
txt++;
@@ -413,7 +415,7 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
struct _camel_header_newsgroup *ng, *scan;
GString *html;
- buf = camel_header_unfold (header->value);
+ buf = camel_header_unfold (header_value);
if (!(ng = camel_header_newsgroups_decode (buf))) {
g_free (buf);
@@ -447,11 +449,11 @@ e_mail_formatter_format_header (EMailFormatter *formatter,
} else if (g_str_equal (name, "Received") || g_str_has_prefix (name, "X-")) {
/* don't unfold Received nor extension headers */
- txt = value = camel_header_decode_string (header->value, charset);
+ txt = value = camel_header_decode_string (header_value, charset);
} else {
/* don't unfold Received nor extension headers */
- buf = camel_header_unfold (header->value);
+ buf = camel_header_unfold (header_value);
txt = value = camel_header_decode_string (buf, charset);
g_free (buf);
}