aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2013-03-09 21:44:37 +0800
committerMatthew Barnes <mbarnes@redhat.com>2013-03-09 21:44:37 +0800
commitaf493cae450d3b0d42d0806bd9b728af15b67270 (patch)
treeb97349bb1d4a211082663dd58da75a9930033696
parent5c13485203337f8676abc9ba299c25ea52f5943c (diff)
downloadgsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.tar
gsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.tar.gz
gsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.tar.bz2
gsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.tar.lz
gsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.tar.xz
gsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.tar.zst
gsoc2013-evolution-af493cae450d3b0d42d0806bd9b728af15b67270.zip
e_mail_config_notebook_commit: Skip non-writable sources.
In some cases the collection source is non-writable but its child sources _are_ writable. In that case, the one non-writable source causes the whole operation to fail. Commit only writable sources.
-rw-r--r--mail/e-mail-config-notebook.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/mail/e-mail-config-notebook.c b/mail/e-mail-config-notebook.c
index fd43b20c7e..bd7f5485df 100644
--- a/mail/e-mail-config-notebook.c
+++ b/mail/e-mail-config-notebook.c
@@ -807,18 +807,18 @@ e_mail_config_notebook_commit (EMailConfigNotebook *notebook,
/* Queue the collection data source if one is defined. */
source = e_mail_config_notebook_get_collection_source (notebook);
- if (source != NULL)
+ if (source != NULL && e_source_get_writable (source))
g_queue_push_tail (source_queue, g_object_ref (source));
/* Queue the mail-related data sources for the account. */
source = e_mail_config_notebook_get_account_source (notebook);
- if (source != NULL)
+ if (source != NULL && e_source_get_writable (source))
g_queue_push_tail (source_queue, g_object_ref (source));
source = e_mail_config_notebook_get_identity_source (notebook);
- if (source != NULL)
+ if (source != NULL && e_source_get_writable (source))
g_queue_push_tail (source_queue, g_object_ref (source));
source = e_mail_config_notebook_get_transport_source (notebook);
- if (source != NULL)
+ if (source != NULL && e_source_get_writable (source))
g_queue_push_tail (source_queue, g_object_ref (source));
list = gtk_container_get_children (GTK_CONTAINER (notebook));