aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2011-10-13 16:28:40 +0800
committerMilan Crha <mcrha@redhat.com>2011-10-13 16:30:19 +0800
commit2a384708440fb3adc32beaf0ae640208efe95476 (patch)
treeb59b6bde9b4638af0bba1a397f18a4af411d5215
parent3b26bfc864956e32696a74c565261de18743df9d (diff)
downloadgsoc2013-evolution-2a384708440fb3adc32beaf0ae640208efe95476.tar.gz
gsoc2013-evolution-2a384708440fb3adc32beaf0ae640208efe95476.tar.zst
gsoc2013-evolution-2a384708440fb3adc32beaf0ae640208efe95476.zip
Bug #660721 - Online Account services not always activating
-rw-r--r--mail/e-mail-store.c4
-rw-r--r--modules/online-accounts/e-online-accounts-google.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/mail/e-mail-store.c b/mail/e-mail-store.c
index e59e7b2abd..4785eb5177 100644
--- a/mail/e-mail-store.c
+++ b/mail/e-mail-store.c
@@ -383,7 +383,7 @@ handle_transport:
camel_url_free (url);
}
- if (!skip && (provider->flags & CAMEL_PROVIDER_IS_STORAGE))
+ if (!skip && (provider->flags & CAMEL_PROVIDER_IS_STORAGE) != 0 && store_table != NULL)
e_mail_store_add (backend, CAMEL_STORE (service));
return CAMEL_STORE (service);
@@ -457,7 +457,7 @@ e_mail_store_remove_by_account (EMailBackend *backend,
provider = camel_service_get_provider (service);
g_return_if_fail (provider != NULL);
- if (!(provider->flags & CAMEL_PROVIDER_IS_STORAGE))
+ if (!(provider->flags & CAMEL_PROVIDER_IS_STORAGE) || store_table == NULL)
return;
e_mail_store_remove (backend, CAMEL_STORE (service));
diff --git a/modules/online-accounts/e-online-accounts-google.c b/modules/online-accounts/e-online-accounts-google.c
index 04d7f9f39a..666c407511 100644
--- a/modules/online-accounts/e-online-accounts-google.c
+++ b/modules/online-accounts/e-online-accounts-google.c
@@ -249,6 +249,8 @@ online_accounts_google_sync_mail (GoaObject *goa_object,
g_object_unref (account);
}
+ e_account_list_save (account_list);
+
g_object_unref (goa_account);
g_object_unref (goa_mail);
}
@@ -327,6 +329,7 @@ online_accounts_google_sync_calendar (GoaObject *goa_object,
}
g_object_unref (source_group);
+ g_object_unref (source_list);
g_object_unref (goa_account);
}
@@ -387,6 +390,7 @@ online_accounts_google_sync_contacts (GoaObject *goa_object,
}
g_object_unref (source_group);
+ g_object_unref (source_list);
g_object_unref (goa_account);
}