aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2012-01-04 02:18:38 +0800
committerMilan Crha <mcrha@redhat.com>2012-01-04 02:18:38 +0800
commit9df46251a323b7f2cf11eb14742ed6f1c55b3ccc (patch)
tree7a8c342809214d9bfeb719fc35bbc5f40b0757df
parent1b8cda5f01f62625b396fa58841ef7c7d3433bcb (diff)
downloadgsoc2013-evolution-9df46251a323b7f2cf11eb14742ed6f1c55b3ccc.tar.gz
gsoc2013-evolution-9df46251a323b7f2cf11eb14742ed6f1c55b3ccc.tar.zst
gsoc2013-evolution-9df46251a323b7f2cf11eb14742ed6f1c55b3ccc.zip
Bug #666832 - Skip local/vfolder services from Send/Receive update
-rw-r--r--mail/mail-send-recv.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/mail/mail-send-recv.c b/mail/mail-send-recv.c
index f38cdb3a1d..45c78cb24f 100644
--- a/mail/mail-send-recv.c
+++ b/mail/mail-send-recv.c
@@ -418,6 +418,7 @@ get_receive_type (CamelService *service)
{
CamelURL *url;
CamelProvider *provider;
+ const gchar *uid;
gboolean is_local_delivery;
url = camel_service_new_camel_url (service);
@@ -434,6 +435,13 @@ get_receive_type (CamelService *service)
if (provider == NULL)
return SEND_INVALID;
+ /* skip some well-known services */
+ uid = camel_service_get_uid (service);
+ if (!uid || !*uid ||
+ g_ascii_strcasecmp (uid, "local") == 0 ||
+ g_ascii_strcasecmp (uid, "vfolder") == 0)
+ return SEND_INVALID;
+
if (provider->object_types[CAMEL_PROVIDER_STORE]) {
if (provider->flags & CAMEL_PROVIDER_IS_STORAGE)
return SEND_UPDATE;