* Fixes NB#80729, allow to save all the mime parts that are attachments from Modest POV
authorSergio Villar Senin <svillar@igalia.com>
Fri, 15 Feb 2008 17:25:31 +0000 (17:25 +0000)
committerSergio Villar Senin <svillar@igalia.com>
Fri, 15 Feb 2008 17:25:31 +0000 (17:25 +0000)
pmo-trunk-r4190

src/maemo/modest-msg-view-window.c

index 41dbf0d..aa0afd2 100644 (file)
@@ -2562,7 +2562,6 @@ modest_msg_view_window_save_attachments (ModestMsgViewWindow *window, TnyList *m
        GList *files_to_save = NULL;
        GtkWidget *save_dialog = NULL;
        gchar *folder = NULL;
        GList *files_to_save = NULL;
        GtkWidget *save_dialog = NULL;
        gchar *folder = NULL;
-       gboolean canceled = FALSE;
        const gchar *filename = NULL;
        gchar *save_multiple_str = NULL;
 
        const gchar *filename = NULL;
        gchar *save_multiple_str = NULL;
 
@@ -2584,11 +2583,14 @@ modest_msg_view_window_save_attachments (ModestMsgViewWindow *window, TnyList *m
                iter = tny_list_create_iterator (mime_parts);
                TnyMimePart *mime_part = (TnyMimePart *) tny_iterator_get_current (iter);
                g_object_unref (iter);
                iter = tny_list_create_iterator (mime_parts);
                TnyMimePart *mime_part = (TnyMimePart *) tny_iterator_get_current (iter);
                g_object_unref (iter);
-               if (!modest_tny_mime_part_is_msg (mime_part) && tny_mime_part_is_attachment (mime_part)) {
+               if (!modest_tny_mime_part_is_msg (mime_part) && 
+                   modest_tny_mime_part_is_attachment_for_modest (mime_part)) {
                        filename = tny_mime_part_get_filename (mime_part);
                } else {
                        filename = tny_mime_part_get_filename (mime_part);
                } else {
+                       /* TODO: show any error? */
                        g_warning ("Tried to save a non-file attachment");
                        g_warning ("Tried to save a non-file attachment");
-                       canceled = TRUE;
+                       g_object_unref (mime_parts);
+                       return;
                }
                g_object_unref (mime_part);
        } else {
                }
                g_object_unref (mime_part);
        } else {
@@ -2628,7 +2630,7 @@ modest_msg_view_window_save_attachments (ModestMsgViewWindow *window, TnyList *m
                        while (!tny_iterator_is_done (iter)) {
                                TnyMimePart *mime_part = (TnyMimePart *) tny_iterator_get_current (iter);
 
                        while (!tny_iterator_is_done (iter)) {
                                TnyMimePart *mime_part = (TnyMimePart *) tny_iterator_get_current (iter);
 
-                               if ((tny_mime_part_is_attachment (mime_part)) && 
+                               if ((modest_tny_mime_part_is_attachment_for_modest (mime_part)) && 
                                    (tny_mime_part_get_filename (mime_part) != NULL)) {
                                        SaveMimePartPair *pair;
                                        
                                    (tny_mime_part_get_filename (mime_part) != NULL)) {
                                        SaveMimePartPair *pair;