diff options
author | Jeff Cai <jeff.cai@sun.com> | 2008-02-02 08:57:26 +0800 |
---|---|---|
committer | Jeff Cai <jeffcai@src.gnome.org> | 2008-02-02 08:57:26 +0800 |
commit | 9eb2dda183da7d53600be5ce0b9f5dfba4bb5f9b (patch) | |
tree | 428ab4b28eddd39028f03dcf03292044d7645aa3 | |
parent | 779045e5f8ea2e3c679adc881cb2d3e970a34aa4 (diff) | |
download | gsoc2013-evolution-9eb2dda183da7d53600be5ce0b9f5dfba4bb5f9b.tar.gz gsoc2013-evolution-9eb2dda183da7d53600be5ce0b9f5dfba4bb5f9b.tar.zst gsoc2013-evolution-9eb2dda183da7d53600be5ce0b9f5dfba4bb5f9b.zip |
** Fixes bug #513395
2008-02-02 Jeff Cai <jeff.cai@sun.com>
** Fixes bug #513395
* exchange-account-setup.c: (owa_authenticate_user),
(owa_editor_entry_changed), (org_gnome_exchange_owa_url),
(org_gnome_exchange_check_options), (org_gnome_exchange_commit):
Check parameters before calling camel_url_new
svn path=/trunk/; revision=34947
-rw-r--r-- | plugins/exchange-operations/ChangeLog | 9 | ||||
-rw-r--r-- | plugins/exchange-operations/exchange-account-setup.c | 28 |
2 files changed, 30 insertions, 7 deletions
diff --git a/plugins/exchange-operations/ChangeLog b/plugins/exchange-operations/ChangeLog index 1e15d41b2c..d74523f7a2 100644 --- a/plugins/exchange-operations/ChangeLog +++ b/plugins/exchange-operations/ChangeLog @@ -1,3 +1,12 @@ +2008-02-02 Jeff Cai <jeff.cai@sun.com> + + ** Fixes bug #513395 + + * exchange-account-setup.c: (owa_authenticate_user), + (owa_editor_entry_changed), (org_gnome_exchange_owa_url), + (org_gnome_exchange_check_options), (org_gnome_exchange_commit): + Check parameters before calling camel_url_new + 2008-01-28 Srinivasa Ragavan <sragavan@novell.com> * exchange-calendar.c: (e_exchange_calendar_commit): Fixes a double diff --git a/plugins/exchange-operations/exchange-account-setup.c b/plugins/exchange-operations/exchange-account-setup.c index 7109fccb08..340cdbab99 100644 --- a/plugins/exchange-operations/exchange-account-setup.c +++ b/plugins/exchange-operations/exchange-account-setup.c @@ -1,4 +1,4 @@ -/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- +/* -*- Mf (id ode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- * * Sushma Rai <rsushma@novell.com> * Copyright (C) 2004 Novell, Inc. @@ -437,8 +437,9 @@ owa_authenticate_user(GtkWidget *button, EConfig *config) source_url = e_account_get_string (target_account->account, E_ACCOUNT_SOURCE_URL); - url = camel_url_new(source_url, NULL); - if (url->user == NULL) { + if (source_url && source_url[0] != '\0') + url = camel_url_new(source_url, NULL); + if (url && url->user == NULL) { id_name = e_account_get_string (target_account->account, E_ACCOUNT_ID_ADDRESS); if (id_name) { at = strchr(id_name, '@'); @@ -513,7 +514,10 @@ owa_editor_entry_changed(GtkWidget *entry, EConfig *config) /* NB: we set the button active only if we have a parsable uri entered */ - url = camel_url_new(e_account_get_string(target->account, E_ACCOUNT_SOURCE_URL), NULL); + const char * target_url = e_account_get_string(target->account, E_ACCOUNT_SOURCE_URL); + if (target_url && target_url[0] != '\0') + url = camel_url_new(target_url, NULL); + else url = NULL; uri = gtk_entry_get_text((GtkEntry *)entry); if (uri && uri[0]) { camel_url_set_param(url, "owa_url", uri); @@ -579,7 +583,10 @@ org_gnome_exchange_owa_url(EPlugin *epl, EConfigHookItemFactoryData *data) target_account = (EMConfigTargetAccount *)data->config->target; source_url = e_account_get_string (target_account->account, E_ACCOUNT_SOURCE_URL); - url = camel_url_new(source_url, NULL); + if (source_url && source_url[0] != '\0') + url = camel_url_new(source_url, NULL); + else + url = NULL; if (url == NULL || strcmp(url->protocol, "exchange") != 0) { if (url) @@ -682,7 +689,11 @@ org_gnome_exchange_check_options(EPlugin *epl, EConfigHookPageCheckData *data) strcmp (data->pageid, "20.receive_options") == 0) { CamelURL *url; - url = camel_url_new(e_account_get_string(target->account, E_ACCOUNT_SOURCE_URL), NULL); + const char * target_url = e_account_get_string(target->account, E_ACCOUNT_SOURCE_URL); + if (target_url && target_url[0] != '\0') + url = camel_url_new(target_url, NULL); + else + url = NULL; /* Note: we only care about exchange url's, we WILL get called on all other url's too. */ if (url != NULL && strcmp(url->protocol, "exchange") == 0 @@ -726,7 +737,10 @@ org_gnome_exchange_commit (EPlugin *epl, EConfigHookItemFactoryData *data) target_account = (EMConfigTargetAccount *)data->config->target; source_url = e_account_get_string (target_account->account, E_ACCOUNT_SOURCE_URL); - url = camel_url_new (source_url, NULL); + if (source_url && source_url[0] != '\0') + url = camel_url_new (source_url, NULL); + else + url = NULL; if (url == NULL || strcmp (url->protocol, "exchange") != 0) { if (url) |