From: Philip Van Hoof Date: Tue, 26 Jun 2007 15:51:46 +0000 (+0000) Subject: Bugfix when setting the account to online X-Git-Tag: git_migration_finished~3102 X-Git-Url: http://git.maemo.org/git/?p=modest;a=commitdiff_plain;h=046b63bfa19696e4cba6ddca8f9e463a7e23115c Bugfix when setting the account to online pmo-trunk-r2432 --- diff --git a/src/modest-tny-account.c b/src/modest-tny-account.c index d601170..975caf3 100644 --- a/src/modest-tny-account.c +++ b/src/modest-tny-account.c @@ -411,8 +411,27 @@ modest_tny_account_new_from_account (ModestAccountMgr *account_mgr, const gchar get_pass_func ? get_pass_func: get_pass_dummy); - TnyAccountStore *astore = (TnyAccountStore *) modest_runtime_get_account_store (); - if (astore) { + /* This name is what shows up in the folder view -- so for some POP/IMAP/... server + * account, we set its name to the account of which it is part. */ + + if (account_data->display_name) + tny_account_set_name (tny_account, account_data->display_name); + + modest_tny_account_set_parent_modest_account_name_for_server_account (tny_account, account_name); + + modest_account_mgr_free_account_data (account_mgr, account_data); + + + static gboolean first_time = TRUE; + + /* The first time we are creating the initial accounts. They will be set online by other + * code that comes later. After the first time, this only happens when a new account is + * created in the wizard. That account needs to be set online if the device is online. */ + + if (!first_time) + { + TnyAccountStore *astore = (TnyAccountStore *) modest_runtime_get_account_store (); + if (astore) { TnyDevice *device = tny_account_store_get_device (astore); GError *err = NULL; tny_camel_account_set_online (TNY_CAMEL_ACCOUNT (tny_account), @@ -420,16 +439,9 @@ modest_tny_account_new_from_account (ModestAccountMgr *account_mgr, const gchar if (err) g_print ("Error connecting: %s\n", err->message); g_object_unref (device); + } } - - /* This name is what shows up in the folder view -- so for some POP/IMAP/... server - * account, we set its name to the account of which it is part. */ - if (account_data->display_name) - tny_account_set_name (tny_account, account_data->display_name); - - modest_tny_account_set_parent_modest_account_name_for_server_account (tny_account, account_name); - - modest_account_mgr_free_account_data (account_mgr, account_data); + first_time = FALSE; return tny_account; }