X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-tny-account-store.c;h=3f3cc660a341a742bd251ed91b889441752f32d4;hp=730f3c71cbb5c24754618471d29b1dc322ec5afe;hb=5d2de21f1b0aa7aa9dee5321acf6edb9b089dd5e;hpb=94fc9281b7d209b6f5526ca8edbc74e30bd03826 diff --git a/src/modest-tny-account-store.c b/src/modest-tny-account-store.c index 730f3c7..3f3cc66 100644 --- a/src/modest-tny-account-store.c +++ b/src/modest-tny-account-store.c @@ -312,9 +312,6 @@ account_verify_last_ref (TnyAccount *account, const gchar *str) g_free (txt); } - - - static void foreach_account_append_to_list (gpointer data, gpointer user_data) @@ -511,16 +508,8 @@ show_wrong_password_dialog (TnyAccount *account) { /* This is easier than using a struct for the user_data: */ ModestTnyAccountStore *self = modest_runtime_get_account_store(); - GtkWidget *main_window; GtkWidget *dialog = NULL; - main_window = (GtkWidget *) modest_window_mgr_get_main_window (modest_runtime_get_window_mgr (), - FALSE); /* don't create */ - if (!main_window) { - g_warning ("%s: password was wrong; ignoring because no main window", __FUNCTION__); - return; - } - if (g_object_get_data (G_OBJECT (account), "connection_specific") != NULL) { modest_ui_actions_on_smtp_servers (NULL, NULL); } else { @@ -844,8 +833,6 @@ modest_tny_account_store_finalize (GObject *obj) priv->session = NULL; } - camel_shutdown (); - G_OBJECT_CLASS(parent_class)->finalize (obj); } @@ -1136,6 +1123,7 @@ modest_tny_account_store_alert (TnyAccountStore *self, case TNY_SERVICE_ERROR_UNKNOWN: return FALSE; default: + g_debug ("Unexpected error %d", error->code); g_return_val_if_reached (FALSE); } @@ -1544,7 +1532,7 @@ connection_status_changed (TnyAccount *account, /* Perform a send receive */ account_name = modest_tny_account_get_parent_modest_account_name_for_server_account (account); main_window = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr (), FALSE); - modest_ui_actions_do_send_receive (account_name, FALSE, FALSE, FALSE, main_window); + modest_ui_actions_do_send_receive (account_name, FALSE, FALSE, TRUE, main_window); } } @@ -1613,9 +1601,13 @@ add_outbox_from_transport_account_to_global_outbox_get_folders_cb (TnyFolderStor self = MODEST_TNY_ACCOUNT_STORE (info->account_store); priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE(self); + /* Note that this could happen if there is not enough space + available on disk, then the outbox folder could not be + created */ if (tny_list_get_length (list) != 1) { - g_warning ("%s: > 1 outbox found (%d)?!", __FUNCTION__, + g_warning ("%s: could not create outbox folder (%d folders found)", __FUNCTION__, tny_list_get_length (list)); + goto frees; } iter_folders = tny_list_create_iterator (list); @@ -1636,10 +1628,11 @@ add_outbox_from_transport_account_to_global_outbox_get_folders_cb (TnyFolderStor /* Notify that the local account changed */ g_signal_emit (G_OBJECT (self), signals [ACCOUNT_CHANGED_SIGNAL], 0, local_account); - - g_object_unref (info->transport_account); g_object_unref (local_account); g_object_unref (per_account_outbox); + + frees: + g_object_unref (info->transport_account); g_slice_free (AddOutboxInfo, info); } @@ -1807,7 +1800,7 @@ on_account_disconnect_when_removing (TnyCamelAccount *account, } else if (TNY_IS_TRANSPORT_ACCOUNT (account)) { ModestTnySendQueue* send_queue; send_queue = modest_runtime_get_send_queue (TNY_TRANSPORT_ACCOUNT (account), FALSE); - if (send_queue) { + if (TNY_IS_SEND_QUEUE (send_queue)) { if (modest_tny_send_queue_sending_in_progress (send_queue)) tny_send_queue_cancel (TNY_SEND_QUEUE (send_queue), TNY_SEND_QUEUE_CANCEL_ACTION_REMOVE, @@ -2039,10 +2032,10 @@ remove_connection_specific_transport_accounts (ModestTnyAccountStore *self) account = modest_tny_account_store_get_server_account (self, transport_account_name, TNY_ACCOUNT_TYPE_TRANSPORT); - if (account) { + + /* the call will free the reference */ + if (account) remove_transport_account (self, TNY_TRANSPORT_ACCOUNT (account)); - g_object_unref (account); - } } iter = g_slist_next (iter); } @@ -2107,7 +2100,6 @@ modest_tny_account_store_get_transport_account_from_outbox_header(ModestTnyAccou g_return_val_if_fail (MODEST_IS_TNY_ACCOUNT_STORE (self), NULL); g_return_val_if_fail (TNY_IS_HEADER (header), NULL); priv = MODEST_TNY_ACCOUNT_STORE_GET_PRIVATE (self); - msg_id = modest_tny_send_queue_get_msg_id (header); acc_iter = tny_list_create_iterator (priv->transport_accounts); while (!header_acc && !tny_iterator_is_done (acc_iter)) { @@ -2115,9 +2107,10 @@ modest_tny_account_store_get_transport_account_from_outbox_header(ModestTnyAccou ModestTnySendQueue *send_queue; ModestTnySendQueueStatus status; send_queue = modest_runtime_get_send_queue(TNY_TRANSPORT_ACCOUNT(account), TRUE); - status = modest_tny_send_queue_get_msg_status(send_queue, msg_id); - if (status != MODEST_TNY_SEND_QUEUE_UNKNOWN) { - header_acc = g_object_ref(account); + if (TNY_IS_SEND_QUEUE (send_queue)) { + status = modest_tny_send_queue_get_msg_status(send_queue, msg_id); + if (status != MODEST_TNY_SEND_QUEUE_UNKNOWN) + header_acc = g_object_ref(account); } g_object_unref (account); tny_iterator_next (acc_iter); @@ -2131,7 +2124,7 @@ modest_tny_account_store_get_transport_account_from_outbox_header(ModestTnyAccou GtkWidget * modest_tny_account_store_show_account_settings_dialog (ModestTnyAccountStore *self, - const gchar *account_name) + const gchar *account_name) { ModestTnyAccountStorePrivate *priv; gpointer dialog_as_gpointer = NULL; @@ -2149,7 +2142,6 @@ modest_tny_account_store_show_account_settings_dialog (ModestTnyAccountStore *se GtkWidget *dialog; dialog = (GtkWidget *) modest_account_settings_dialog_new (); settings = modest_account_mgr_load_account_settings (priv->account_mgr, account_name); - modest_account_settings_dialog_save_password (MODEST_ACCOUNT_SETTINGS_DIALOG (dialog)); modest_account_settings_dialog_set_account (MODEST_ACCOUNT_SETTINGS_DIALOG (dialog), settings); g_object_unref (settings); modest_account_settings_dialog_switch_to_user_info (MODEST_ACCOUNT_SETTINGS_DIALOG (dialog));