0.9.6claws40
[claws.git] / src / procmime.c
index 3271d66d826aceddc65b578e0e52c0baba3e9911..f58fc2a44f941da7fc527dd6cd78bf76eb068d94 100644 (file)
@@ -76,7 +76,6 @@ static gboolean free_func(GNode *node, gpointer data)
        MimeInfo *mimeinfo = (MimeInfo *) node->data;
 
        g_free(mimeinfo->encoding);
-       g_free(mimeinfo->charset);
        g_free(mimeinfo->name);
        g_free(mimeinfo->content_disposition);
        if(mimeinfo->tmpfile)
@@ -210,6 +209,14 @@ enum
        H_SUBJECT                   = 4
 };
 
+const gchar *procmime_mimeinfo_get_parameter(MimeInfo *mimeinfo, const gchar *name)
+{
+       g_return_val_if_fail(mimeinfo != NULL, NULL);
+       g_return_val_if_fail(name != NULL, NULL);
+       
+       return g_hash_table_lookup(mimeinfo->parameters, name);
+}
+
 gboolean procmime_decode_content(MimeInfo *mimeinfo)
 {
        gchar buf[BUFFSIZE];
@@ -479,7 +486,8 @@ FILE *procmime_get_text_content(MimeInfo *mimeinfo)
        }
 
        src_codeset = prefs_common.force_charset
-               ? prefs_common.force_charset : mimeinfo->charset;
+               ? prefs_common.force_charset : 
+               procmime_mimeinfo_get_parameter(mimeinfo, "charset");
 
        renderer = NULL;