Fixes NB#114434, when saving an attachment with the same name as another already...
authorSergio Villar Senín <svillar@igalia.com>
Mon, 4 May 2009 15:20:40 +0000 (17:20 +0200)
committerSergio Villar Senín <svillar@igalia.com>
Mon, 4 May 2009 15:20:40 +0000 (17:20 +0200)
src/hildon2/modest-msg-view-window.c

index acf889c..3d6753d 100644 (file)
@@ -2703,12 +2703,22 @@ save_mime_parts_to_file_with_checks (SaveMimePartInfo *info)
         }
        if (replaced_files) {
                GtkWidget *confirm_overwrite_dialog;
         }
        if (replaced_files) {
                GtkWidget *confirm_overwrite_dialog;
-                const gchar *message = (replaced_files == 1) ?
-                        _FM("docm_nc_replace_file") : _FM("docm_nc_replace_multiple");
-                confirm_overwrite_dialog = hildon_note_new_confirmation (NULL, message);
-               if (gtk_dialog_run (GTK_DIALOG (confirm_overwrite_dialog)) != GTK_RESPONSE_OK) {
-                       is_ok = FALSE;
+
+               if (replaced_files == 1) {
+                       SaveMimePartPair *pair = files->data;
+                       const gchar *filename = tny_mime_part_get_filename (pair->part);
+                       gchar *message = g_strdup_printf ("%s\n%s",
+                                                         _FM("docm_nc_replace_file"),
+                                                         (filename) ? filename : "");
+                       confirm_overwrite_dialog = hildon_note_new_confirmation (NULL, message);
+                       g_free (message);
+               } else {
+                       confirm_overwrite_dialog = hildon_note_new_confirmation (NULL,
+                                                                                _FM("docm_nc_replace_multiple"));
                }
                }
+               if (gtk_dialog_run (GTK_DIALOG (confirm_overwrite_dialog)) != GTK_RESPONSE_OK)
+                       is_ok = FALSE;
+
                gtk_widget_destroy (confirm_overwrite_dialog);
        }
 
                gtk_widget_destroy (confirm_overwrite_dialog);
        }