aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog8
-rw-r--r--mail/em-filter-source-element.c15
2 files changed, 16 insertions, 7 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 730130725c..40115493ac 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,5 +1,13 @@
2005-03-16 Not Zed <NotZed@Ximian.com>
+ ** See bug #73559
+
+ * em-filter-source-element.c
+ (em_filter_source_element_get_sources): check the url != "" and decoded
+ before using it.
+
+2005-03-16 Not Zed <NotZed@Ximian.com>
+
** See bug #71003, again.
* mail-component.c (impl_quit): fix sense of 'can quit' logic.
diff --git a/mail/em-filter-source-element.c b/mail/em-filter-source-element.c
index 8196cea7b8..c35862a101 100644
--- a/mail/em-filter-source-element.c
+++ b/mail/em-filter-source-element.c
@@ -360,16 +360,17 @@ em_filter_source_element_get_sources(EMFilterSourceElement *fs)
e_iterator_next(it)) {
account = (const EAccount *)e_iterator_get(it);
- if (account->source == NULL || account->source->url == NULL)
+ if (account->source == NULL || account->source->url == NULL || account->source->url[0] == 0)
continue;
- /* hide secret stuff */
url = camel_url_new(account->source->url, NULL);
- uri = camel_url_to_string(url, CAMEL_URL_HIDE_ALL);
- camel_url_free(url);
-
- em_filter_source_element_add_source(fs, account->name, account->id->name, account->id->address, uri);
- g_free(uri);
+ if (url) {
+ /* hide secret stuff */
+ uri = camel_url_to_string(url, CAMEL_URL_HIDE_ALL);
+ camel_url_free(url);
+ em_filter_source_element_add_source(fs, account->name, account->id->name, account->id->address, uri);
+ g_free(uri);
+ }
}
g_object_unref(it);
g_object_unref(accounts);