[evolution] Bug #627952 - 'Local delivery' mbox's aren't read properly
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] Bug #627952 - 'Local delivery' mbox's aren't read properly
- Date: Thu, 5 May 2011 11:23:25 +0000 (UTC)
commit 19a9f3474019e83d51f2baee6537f5c71a208a2a
Author: Milan Crha <mcrha redhat com>
Date: Thu May 5 13:22:46 2011 +0200
Bug #627952 - 'Local delivery' mbox's aren't read properly
mail/e-mail-store.c | 20 ++++++++++++++------
mail/em-utils.c | 2 +-
2 files changed, 15 insertions(+), 7 deletions(-)
---
diff --git a/mail/e-mail-store.c b/mail/e-mail-store.c
index 65bcbc8..6313640 100644
--- a/mail/e-mail-store.c
+++ b/mail/e-mail-store.c
@@ -248,17 +248,24 @@ mail_store_load_accounts (EMailSession *session,
if (!account->enabled)
continue;
- /* Do not add local-delivery files. */
+ /* Do not add local-delivery files, but make them ready for later use. */
url = camel_url_new (account->source->url, NULL);
if (url != NULL) {
skip = em_utils_is_local_delivery_mbox_file (url);
camel_url_free (url);
}
- if (skip)
- continue;
+ if (skip) {
+ GError *error = NULL;
- e_mail_store_add_by_account (session, account);
+ if (!camel_session_add_service (CAMEL_SESSION (session), account->uid, account->source->url, CAMEL_PROVIDER_STORE, &error)) {
+ g_warning ("%s: Failed to add '%s' as store: %s", G_STRFUNC, account->source->url, error ? error->message : "Unknown error");
+ if (error)
+ g_error_free (error);
+ }
+ } else {
+ e_mail_store_add_by_account (session, account);
+ }
/* While we're at it, add the account's transport to the
* CamelSession. The transport's UID is a kludge for now.
@@ -359,8 +366,9 @@ fail:
/* FIXME: Show an error dialog. */
g_warning (
"Couldn't get service: %s: %s", account->name,
- error->message);
- g_error_free (error);
+ error ? error->message : "Not a CamelStore");
+ if (error)
+ g_error_free (error);
return NULL;
}
diff --git a/mail/em-utils.c b/mail/em-utils.c
index 9b21fda..c20649c 100644
--- a/mail/em-utils.c
+++ b/mail/em-utils.c
@@ -2443,7 +2443,7 @@ em_utils_is_local_delivery_mbox_file (CamelURL *url)
{
g_return_val_if_fail (url != NULL, FALSE);
- return g_str_has_prefix (url->protocol, "mbox:") &&
+ return g_str_equal (url->protocol, "mbox") &&
(url->path != NULL) &&
g_file_test (url->path, G_FILE_TEST_EXISTS) &&
!g_file_test (url->path, G_FILE_TEST_IS_DIR);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]