0.9.5claws21
[claws.git] / src / compose.c
index 2e5dcb012bd9916885116bf7ebc6fdec57c0cb27..43ff0dc8efd6be8346c0cea4f2ad0c2ac2baaa7c 100644 (file)
@@ -1299,6 +1299,7 @@ Compose *compose_redirect(PrefsAccount *account, MsgInfo *msginfo)
        Compose *compose;
        gchar *filename;
        GtkItemFactory *ifactory;
+       FolderItem *item;
 
        g_return_val_if_fail(msginfo != NULL, NULL);
 
@@ -1323,6 +1324,17 @@ Compose *compose_redirect(PrefsAccount *account, MsgInfo *msginfo)
 
        compose->redirect_filename = filename;
        
+       /* Set save folder */
+       item = msginfo->folder;
+       if (item && item->prefs && item->prefs->save_copy_to_folder) {
+               gchar *folderidentifier;
+
+               gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(compose->savemsg_checkbtn), prefs_common.savemsg);
+               folderidentifier = folder_item_get_identifier(item);
+               gtk_entry_set_text(GTK_ENTRY(compose->savemsg_entry), folderidentifier);
+               g_free(folderidentifier);
+       }
+
        compose_attach_parts(compose, msginfo);
 
        if (msginfo->subject)
@@ -4060,9 +4072,9 @@ static gint compose_write_headers_from_headerlist(Compose *compose,
        if (write_header) {
                gchar *buf;
 
-               buf = g_new0(gchar, headerstr->len * 2);
+               buf = g_new0(gchar, headerstr->len * 4);
                compose_convert_header
-                       (buf, headerstr->len * 2, headerstr->str,
+                       (buf, headerstr->len * 4, headerstr->str,
                        strlen(header) + 2, TRUE);
                fprintf(fp, "%s: %s\n", header, buf);
                g_free(buf);