aboutsummaryrefslogtreecommitdiffstats
path: root/em-format/e-mail-parser-text-enriched.c
diff options
context:
space:
mode:
Diffstat (limited to 'em-format/e-mail-parser-text-enriched.c')
-rw-r--r--em-format/e-mail-parser-text-enriched.c25
1 files changed, 18 insertions, 7 deletions
diff --git a/em-format/e-mail-parser-text-enriched.c b/em-format/e-mail-parser-text-enriched.c
index f2b26c2d5f..f938471e62 100644
--- a/em-format/e-mail-parser-text-enriched.c
+++ b/em-format/e-mail-parser-text-enriched.c
@@ -53,22 +53,33 @@ empe_text_enriched_parse (EMailParserExtension *extension,
{
GQueue work_queue = G_QUEUE_INIT;
EMailPart *mail_part;
- const gchar *tmp;
+ const gchar *cid;
gint len;
CamelContentType *ct;
len = part_id->len;
g_string_append (part_id, ".text_enriched");
+ mail_part = e_mail_part_new (part, part_id->str);
+
ct = camel_mime_part_get_content_type (part);
+ if (ct != NULL) {
+ gchar *mime_type;
- mail_part = e_mail_part_new (part, part_id->str);
- mail_part->mime_type = ct ? camel_content_type_simple (ct) : g_strdup ("text/enriched");
- tmp = camel_mime_part_get_content_id (part);
- if (!tmp) {
- mail_part->cid = NULL;
+ mime_type = camel_content_type_simple (ct);
+ e_mail_part_set_mime_type (mail_part, mime_type);
+ g_free (mime_type);
} else {
- mail_part->cid = g_strdup_printf ("cid:%s", tmp);
+ e_mail_part_set_mime_type (mail_part, "text/enriched");
+ }
+
+ cid = camel_mime_part_get_content_id (part);
+ if (cid != NULL) {
+ gchar *cid_uri;
+
+ cid_uri = g_strdup_printf ("cid:%s", cid);
+ e_mail_part_set_cid (mail_part, cid_uri);
+ g_free (cid_uri);
}
g_string_truncate (part_id, len);