* Fixes several memory leaks
[modest] / src / maemo / modest-platform.c
index b438d0b..9ea8117 100644 (file)
@@ -531,6 +531,7 @@ entry_insert_text (GtkEditable *editable,
 
        chars = gtk_editable_get_chars (editable, 0, -1);
        chars_length = g_utf8_strlen (chars, -1);
+       g_free (chars);
 
        /* Show WID-INF036 */
        if (chars_length >= 20) {
@@ -716,7 +717,7 @@ modest_platform_run_folder_name_dialog (GtkWindow *parent_window,
        gtk_box_pack_start (GTK_BOX(GTK_DIALOG(dialog)->vbox), 
                            hbox, FALSE, FALSE, 0);
        modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), 
-                                    GTK_WINDOW (dialog));
+                                    GTK_WINDOW (dialog), GTK_WINDOW (parent_window));
        gtk_widget_show_all (GTK_WIDGET(dialog));
                
        result = gtk_dialog_run (GTK_DIALOG(dialog));
@@ -830,7 +831,7 @@ modest_platform_run_confirmation_dialog (GtkWindow *parent_window,
        
        dialog = hildon_note_new_confirmation (parent_window, message);
        modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), 
-                                    GTK_WINDOW (dialog));
+                                    GTK_WINDOW (dialog), GTK_WINDOW (parent_window));
 
        response = gtk_dialog_run (GTK_DIALOG (dialog));
 
@@ -853,7 +854,7 @@ modest_platform_run_confirmation_dialog_with_buttons (GtkWindow *parent_window,
                                                           button_cancel, GTK_RESPONSE_CANCEL,
                                                           NULL);
        modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), 
-                                    GTK_WINDOW (dialog));
+                                    GTK_WINDOW (dialog), GTK_WINDOW (parent_window));
 
        response = gtk_dialog_run (GTK_DIALOG (dialog));
 
@@ -873,7 +874,8 @@ modest_platform_run_yes_no_dialog (GtkWindow *parent_window,
                                                           _("mcen_bd_yes"), GTK_RESPONSE_YES,
                                                           _("mcen_bd_no"), GTK_RESPONSE_NO,
                                                           NULL);
-       modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), GTK_WINDOW (dialog));
+       modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), 
+                                    GTK_WINDOW (dialog), GTK_WINDOW (parent_window));
        response = gtk_dialog_run (GTK_DIALOG (dialog));
        
        on_destroy_dialog (dialog);
@@ -893,7 +895,7 @@ modest_platform_run_information_dialog (GtkWindow *parent_window,
        note = hildon_note_new_information (parent_window, message);
        if (block)
                modest_window_mgr_set_modal (modest_runtime_get_window_mgr (),
-                                            GTK_WINDOW (note));
+                                            GTK_WINDOW (note), GTK_WINDOW (parent_window));
        
        if (block) {
                gtk_dialog_run (GTK_DIALOG (note));
@@ -1614,6 +1616,8 @@ on_timeout_check_account_is_online(CheckAccountIdleData* data)
 gboolean
 modest_platform_check_and_wait_for_account_is_online(TnyAccount *account)
 {
+       gboolean is_online;
+
        g_return_val_if_fail (account, FALSE);
        
        printf ("DEBUG: %s: account id=%s\n", __FUNCTION__, tny_account_get_id (account));
@@ -1657,9 +1661,10 @@ modest_platform_check_and_wait_for_account_is_online(TnyAccount *account)
        g_main_loop_unref (data->loop);
        /* g_main_context_unref (context); */
 
+       is_online = data->is_online;
        g_slice_free (CheckAccountIdleData, data);
        
-       return data->is_online; 
+       return is_online;       
 }
 
 
@@ -1722,7 +1727,7 @@ modest_platform_run_certificate_confirmation_dialog (const gchar* server_name,
                          (gpointer) certificate);
        
        modest_window_mgr_set_modal (modest_runtime_get_window_mgr (),
-                                    GTK_WINDOW (note));
+                                    GTK_WINDOW (note), (GtkWindow *) main_win);
        response = gtk_dialog_run(GTK_DIALOG(note));
 
        on_destroy_dialog (note);
@@ -1755,7 +1760,7 @@ modest_platform_run_alert_dialog (const gchar* prompt,
                GtkWidget *dialog = GTK_WIDGET (hildon_note_new_confirmation (GTK_WINDOW (main_win), 
                                                                              prompt));
                modest_window_mgr_set_modal (modest_runtime_get_window_mgr (),
-                                            GTK_WINDOW (dialog));
+                                            GTK_WINDOW (dialog), (GtkWindow *) main_win);
                
                const int response = gtk_dialog_run (GTK_DIALOG (dialog));
                retval = (response == GTK_RESPONSE_YES) || (response == GTK_RESPONSE_OK);