diff options
-rw-r--r-- | mail/ChangeLog | 7 | ||||
-rw-r--r-- | mail/mail-tools.c | 8 |
2 files changed, 15 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 9e98b6f4ed..b8cdfdfc85 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,10 @@ +2003-05-06 Not Zed <NotZed@Ximian.com> + + ** See bug #42400 + + * mail-tools.c (meta_data_key): protect against getting an + unparsable uri. + 2003-05-05 Not Zed <NotZed@Ximian.com> ** See bug #42294. diff --git a/mail/mail-tools.c b/mail/mail-tools.c index 565fcaed71..43c67a2fb7 100644 --- a/mail/mail-tools.c +++ b/mail/mail-tools.c @@ -508,6 +508,14 @@ static char *meta_data_key(const char *uri, char **pathp) char *p, c; url = camel_url_new(uri, NULL); + + if (url == NULL) { + g_warning("Trying to retrieve meta-data for unparsable uri: %s", uri); + *pathp = g_build_path(evolution_dir, "meta/unknown", NULL); + + return g_strdup("folder"); + } + path = g_string_new(evolution_dir); g_string_append_printf(path, "/meta/%s/", url->protocol); |