evolution-data-server r10196 - in trunk/calendar: . backends/caldav



Author: mcrha
Date: Tue Mar 31 15:11:28 2009
New Revision: 10196
URL: http://svn.gnome.org/viewvc/evolution-data-server?rev=10196&view=rev

Log:
2009-03-31  Milan Crha  <mcrha redhat com>

	** Fix for bug #573880

	* backends/caldav/e-cal-backend-caldav.c: (initialize_backend):
	Encode only path and use SoupURI to do this.



Modified:
   trunk/calendar/ChangeLog
   trunk/calendar/backends/caldav/e-cal-backend-caldav.c

Modified: trunk/calendar/backends/caldav/e-cal-backend-caldav.c
==============================================================================
--- trunk/calendar/backends/caldav/e-cal-backend-caldav.c	(original)
+++ trunk/calendar/backends/caldav/e-cal-backend-caldav.c	Tue Mar 31 15:11:28 2009
@@ -1724,25 +1724,23 @@
 	}
 
 	if (priv->uri) {
-		char *p = strstr (priv->uri, "://");
-		char *tmp, *old = priv->uri;
+		SoupURI *suri = soup_uri_new (priv->uri);
 
 		/* properly encode uri */
-		tmp = soup_uri_encode (p ? p + 3 : priv->uri, NULL);
+		if (suri && suri->path) {
+			char *tmp = soup_uri_encode (suri->path, NULL);
+			char *path = soup_uri_normalize (tmp, "/");
 
-		priv->uri = soup_uri_normalize (tmp, "/");
-		g_free (tmp);
-
-		if (p) {
-			/* prepend protocol */
-			tmp = priv->uri;
-			p [3] = 0;
+			soup_uri_set_path (suri, path);
 
-			priv->uri = g_strconcat (old, tmp, NULL);
 			g_free (tmp);
+			g_free (path);
+			g_free (priv->uri);
+
+			priv->uri = soup_uri_to_string (suri, FALSE);
 		}
 
-		g_free (old);
+		soup_uri_free (suri);
 	}
 
 	/* remove trailing slashes... */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]