From 2e83026eaa4c190a0e5dcb6dd65cbfc926191444 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Fri, 11 Feb 2011 12:58:29 +0100 Subject: Bug #637727 - Sent/Draft folder not set in startup-wizard account --- mail/e-mail-local.c | 11 +++++++++-- modules/startup-wizard/evolution-startup-wizard.c | 5 +++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/mail/e-mail-local.c b/mail/e-mail-local.c index c5efcc06b0..2779c0e054 100644 --- a/mail/e-mail-local.c +++ b/mail/e-mail-local.c @@ -41,22 +41,26 @@ static struct { }; static CamelStore *local_store; +static gboolean mail_local_initialized = FALSE; void e_mail_local_init (EMailSession *session, const gchar *data_dir) { - static gboolean initialized = FALSE; CamelService *service; CamelURL *url; gchar *temp; gint ii; GError *local_error = NULL; - g_return_if_fail (!initialized); + if (mail_local_initialized) + return; + g_return_if_fail (E_IS_MAIL_SESSION (session)); g_return_if_fail (data_dir != NULL); + mail_local_initialized = TRUE; + url = camel_url_new ("maildir:", NULL); temp = g_build_filename (data_dir, "local", NULL); camel_url_set_path (url, temp); @@ -113,6 +117,7 @@ fail: CamelFolder * e_mail_local_get_folder (EMailLocalFolder type) { + g_return_val_if_fail (mail_local_initialized, NULL); g_return_val_if_fail (CHECK_LOCAL_FOLDER_TYPE (type), NULL); return default_local_folders[type].folder; @@ -121,6 +126,7 @@ e_mail_local_get_folder (EMailLocalFolder type) const gchar * e_mail_local_get_folder_uri (EMailLocalFolder type) { + g_return_val_if_fail (mail_local_initialized, NULL); g_return_val_if_fail (CHECK_LOCAL_FOLDER_TYPE (type), NULL); return default_local_folders[type].folder_uri; @@ -129,6 +135,7 @@ e_mail_local_get_folder_uri (EMailLocalFolder type) CamelStore * e_mail_local_get_store (void) { + g_return_val_if_fail (mail_local_initialized, NULL); g_return_val_if_fail (CAMEL_IS_STORE (local_store), NULL); return local_store; diff --git a/modules/startup-wizard/evolution-startup-wizard.c b/modules/startup-wizard/evolution-startup-wizard.c index 928ff277cb..2bbaa5675e 100644 --- a/modules/startup-wizard/evolution-startup-wizard.c +++ b/modules/startup-wizard/evolution-startup-wizard.c @@ -26,6 +26,7 @@ #include #include +#include #include #include #include @@ -434,12 +435,16 @@ startup_wizard_new_assistant (EStartupWizard *extension) EConfigItem *config_item; GtkWidget *widget; GSList *items = NULL; + const gchar *data_dir; shell = startup_wizard_get_shell (extension); shell_backend = e_shell_get_backend_by_name (shell, "mail"); backend = E_MAIL_BACKEND (shell_backend); session = e_mail_backend_get_session (backend); + data_dir = e_shell_backend_get_data_dir (shell_backend); + + e_mail_local_init (session, data_dir); emae = em_account_editor_new ( NULL, EMAE_ASSISTANT, session, -- cgit v1.2.3