aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/hula-account-setup
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2007-05-26 00:19:02 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2007-05-26 00:19:02 +0800
commit8236cce314ca23ae258687c7c523b08ea0a98879 (patch)
treee6cf04259dd45e7fb04248d416bd895fc7bcd9d8 /plugins/hula-account-setup
parent69571e706336eff05fe5a0228606856db8311fbf (diff)
downloadgsoc2013-evolution-8236cce314ca23ae258687c7c523b08ea0a98879.tar.gz
gsoc2013-evolution-8236cce314ca23ae258687c7c523b08ea0a98879.tar.zst
gsoc2013-evolution-8236cce314ca23ae258687c7c523b08ea0a98879.zip
Don't assume the relative URI is non-NULL (#427232).
2007-05-25 Matthew Barnes <mbarnes@redhat.com> * addressbook/gui/component/addressbook-component.c (ensure_sources): * addressbook/gui/component/addressbook-migrate.c (ensure_sources): * calendar/gui/migration.c (create_calendar_sources), (create_task_sources), (create_memo_sources): * calendar/gui/tasks-component.c (ensure_sources): * calendar/gui/calendar-component.c (ensure_sources): * calendar/gui/memos-component.c (ensure_sources): * plugins/hula-account-setup/camel-hula-listener.c (remove_esource), (modify_esource): * plugins/groupwise-account-setup/camel-gw-listener.c (remove_esource), (modify_esource): Don't assume the relative URI is non-NULL (#427232). * plugins/exchange-operations/exchange-config-listener.c (exchange_add_autocompletion_folders): Don't assume the absolute URI is non-NULL (#427232). svn path=/trunk/; revision=33577
Diffstat (limited to 'plugins/hula-account-setup')
-rw-r--r--plugins/hula-account-setup/ChangeLog5
-rw-r--r--plugins/hula-account-setup/camel-hula-listener.c43
2 files changed, 25 insertions, 23 deletions
diff --git a/plugins/hula-account-setup/ChangeLog b/plugins/hula-account-setup/ChangeLog
index 14f86e4aad..6a939b6335 100644
--- a/plugins/hula-account-setup/ChangeLog
+++ b/plugins/hula-account-setup/ChangeLog
@@ -1,3 +1,8 @@
+2007-05-25 Matthew Barnes <mbarnes@redhat.com>
+
+ * camel-hula-listener.c (remove_esource), (modify_esource):
+ Don't assume the relative URI is non-NULL (#427232).
+
2006-09-18 Matthew Barnes <mbarnes@redhat.com>
* camel-hula-listener.c: (finalize)
diff --git a/plugins/hula-account-setup/camel-hula-listener.c b/plugins/hula-account-setup/camel-hula-listener.c
index e6e0fe6773..c481778434 100644
--- a/plugins/hula-account-setup/camel-hula-listener.c
+++ b/plugins/hula-account-setup/camel-hula-listener.c
@@ -241,10 +241,7 @@ static void
remove_esource (const char *conf_key, const char *group_name, char* source_name, const char* relative_uri)
{
ESourceList *list;
- ESourceGroup *group;
- ESource *source;
GSList *groups;
- GSList *sources;
gboolean found_group;
GConfClient* client;
GSList *ids;
@@ -258,19 +255,20 @@ remove_esource (const char *conf_key, const char *group_name, char* source_name,
found_group = FALSE;
for ( ; groups != NULL && !found_group; groups = g_slist_next (groups)) {
-
- group = E_SOURCE_GROUP (groups->data);
+ ESourceGroup *group = E_SOURCE_GROUP (groups->data);
if (strcmp (e_source_group_peek_name (group), group_name) == 0 &&
strcmp (e_source_group_peek_base_uri (group), HULA_CALDAV_URI_PREFIX ) == 0) {
-
- sources = e_source_group_peek_sources (group);
+ GSList *sources = e_source_group_peek_sources (group);
for( ; sources != NULL; sources = g_slist_next (sources)) {
-
- source = E_SOURCE (sources->data);
-
- if (strcmp (e_source_peek_relative_uri (source), relative_uri) == 0) {
+ ESource *source = E_SOURCE (sources->data);
+ const gchar *source_relative_uri;
+
+ source_relative_uri = e_source_peek_relative_uri (source);
+ if (source_relative_uri == NULL)
+ continue;
+ if (strcmp (source_relative_uri, relative_uri) == 0) {
if (!strcmp (conf_key, CALENDAR_SOURCES))
source_selection_key = SELECTED_CALENDARS;
@@ -311,15 +309,11 @@ static void
modify_esource (const char* conf_key, HulaAccountInfo *old_account_info, const char* new_group_name, CamelURL *new_url)
{
ESourceList *list;
- ESourceGroup *group;
- ESource *source;
GSList *groups;
- GSList *sources;
char *old_relative_uri;
CamelURL *url;
gboolean found_group;
GConfClient* client;
- char *new_relative_uri;
url = camel_url_new (old_account_info->source_url, NULL);
if (!url->host || strlen (url->host) ==0)
@@ -334,19 +328,22 @@ modify_esource (const char* conf_key, HulaAccountInfo *old_account_info, const c
for ( ; groups != NULL && !found_group; groups = g_slist_next (groups)) {
- group = E_SOURCE_GROUP (groups->data);
+ ESourceGroup *group = E_SOURCE_GROUP (groups->data);
if (strcmp (e_source_group_peek_name (group), old_account_info->name) == 0 &&
strcmp (e_source_group_peek_base_uri (group), HULA_CALDAV_URI_PREFIX) == 0) {
-
- sources = e_source_group_peek_sources (group);
+ GSList *sources = e_source_group_peek_sources (group);
for ( ; sources != NULL; sources = g_slist_next (sources)) {
-
- source = E_SOURCE (sources->data);
-
- if (strcmp (e_source_peek_relative_uri (source), old_relative_uri) == 0) {
-
+ ESource *source = E_SOURCE (sources->data);
+ const gchar *source_relative_uri;
+
+ source_relative_uri = e_source_peek_relative_uri (source);
+ if (source_relative_uri == NULL)
+ continue;
+ if (strcmp (source_relative_uri, old_relative_uri) == 0) {
+ gchar *new_relative_uri;
+
new_relative_uri = g_strdup_printf ("%s@%s:%d/dav/%s/calendar/Personal", new_url->user, new_url->host, new_url->port, new_url->user);
e_source_group_set_name (group, new_group_name);
e_source_set_relative_uri (source, new_relative_uri);