Fix for the bug #330974 [exchange calendar]

pchenthill <[email protected]>
Newsgroups gmane.comp.gnome.evolution.patches
Message-ID <[email protected]>
Hi,
    Have attached the fix for the bug. 

thanks, Chenthill.

_______________________________________________
Evolution-patches mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/evolution-patches
330974.diff (text/x-patch, 1.6 KB)
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/plugins/mail-to-task/ChangeLog,v
retrieving revision 1.20
diff -u -p -r1.20 ChangeLog
--- ChangeLog	1 Feb 2006 09:58:47 -0000	1.20
+++ ChangeLog	4 Mar 2006 09:27:06 -0000
@@ -1,3 +1,12 @@
+2006-03-04  Chenthill Palanisamy  <[email protected]>
+
+	Fixes #330974
+	* mail-to-task.c: 
+	(set_description): Check if the params are present,
+	before accessing the value. Fixes a crash.
+	(convert_to_task): Set the authentication function
+	while creating the ECal.
+
 2006-02-01  Chenthill Palanisamy  <[email protected]>
 
 	* Makefile.am: Reverting the commit made by 
Index: mail-to-task.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/mail-to-task/mail-to-task.c,v
retrieving revision 1.8
diff -u -p -r1.8 mail-to-task.c
--- mail-to-task.c	14 Jan 2006 07:05:08 -0000	1.8
+++ mail-to-task.c	4 Mar 2006 09:27:06 -0000
@@ -92,7 +92,7 @@ set_description (ECalComponent *comp, Ca
 	camel_object_unref (mem);
 
 	/* convert to UTF-8 string */
-	if (str && content->mime_type->params->value)
+	if (str && content->mime_type->params && content->mime_type->params->value)
 	{
 		convert_str = g_convert (str, strlen (str), 
 					 "UTF-8", content->mime_type->params->value,
@@ -221,7 +221,7 @@ convert_to_task (GPtrArray *uid_array, s
 			GThread *thread = NULL;
 			GError *error = NULL;
 			
-			client = e_cal_new (source, E_CAL_SOURCE_TYPE_TODO);
+			client = auth_new_cal_from_source (source, E_CAL_SOURCE_TYPE_TODO);
 			if (!client) {
 				char *uri = e_source_get_uri (source);
eds.diff (text/x-patch, 1.5 KB)
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/ChangeLog,v
retrieving revision 1.566
diff -u -p -r1.566 ChangeLog
--- ChangeLog	2 Mar 2006 02:22:34 -0000	1.566
+++ ChangeLog	4 Mar 2006 09:29:03 -0000
@@ -1,3 +1,10 @@
+2006-03-04  Chenthill Palanisamy  <[email protected]>
+
+	* libecal/e-cal.c: 
+	(build_pass_key): Get the uri from ECal, which is more
+	reliable.
+	(open_calendar): Pass ECal to build_pass_key.
+
 2006-03-02  Jeff Cai  <[email protected]>
 
 	Fixes #332276
Index: libecal/e-cal.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/libecal/e-cal.c,v
retrieving revision 1.124
diff -u -p -r1.124 e-cal.c
--- libecal/e-cal.c	13 Feb 2006 07:38:17 -0000	1.124
+++ libecal/e-cal.c	4 Mar 2006 09:29:05 -0000
@@ -1626,16 +1626,15 @@ e_cal_set_auth_func (ECal *ecal, ECalAut
 }
 
 static char *
-build_pass_key (ESource *source)
+build_pass_key (ECal *ecal)
 {
 	char *uri, *euri_str;
 	EUri *euri;
 
-	uri = e_source_get_uri (source);
+	uri = e_cal_get_uri (ecal);
 
 	euri = e_uri_new (uri);
 	euri_str = e_uri_to_string (euri, FALSE);
-	g_free (uri);
 	return euri_str;
 }
 
@@ -1710,7 +1709,7 @@ open_calendar (ECal *ecal, gboolean only
 		}
 		auth_type = e_source_get_property (priv->source, "auth-type");
 		if (auth_type)
-			key = build_pass_key (priv->source);
+			key = build_pass_key (ecal);
 		else
 			key = e_source_get_uri (priv->source);
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.