evolution-data-server r8862 - in branches/camel-db-summary: . calendar calendar/libedata-cal camel camel/providers/groupwise camel/providers/imap camel/providers/imap4 camel/providers/local camel/providers/pop3 camel/tests/message camel/tests/mime-filter libebackend libedataserverui po servers/exchange servers/exchange/lib servers/groupwise



Author: sragavan
Date: Tue May 27 08:03:02 2008
New Revision: 8862
URL: http://svn.gnome.org/viewvc/evolution-data-server?rev=8862&view=rev

Log:
Merge branch 'master' into disk-summary

Conflicts:

	camel/ChangeLog


Modified:
   branches/camel-db-summary/ChangeLog
   branches/camel-db-summary/calendar/ChangeLog
   branches/camel-db-summary/calendar/libedata-cal/Makefile.am
   branches/camel-db-summary/calendar/libedata-cal/e-cal-backend-sync.c
   branches/camel-db-summary/camel/ChangeLog
   branches/camel-db-summary/camel/README.HACKING
   branches/camel-db-summary/camel/camel-disco-diary.c
   branches/camel-db-summary/camel/camel-disco-folder.c
   branches/camel-db-summary/camel/camel-disco-store.c
   branches/camel-db-summary/camel/camel-filter-search.c
   branches/camel-db-summary/camel/camel-folder-summary.c
   branches/camel-db-summary/camel/camel-folder-summary.h
   branches/camel-db-summary/camel/camel-folder.c
   branches/camel-db-summary/camel/camel-gpg-context.c
   branches/camel-db-summary/camel/camel-mime-utils.c
   branches/camel-db-summary/camel/camel-object.c
   branches/camel-db-summary/camel/camel-offline-journal.c
   branches/camel-db-summary/camel/camel-provider.c
   branches/camel-db-summary/camel/camel-sasl-kerberos4.c
   branches/camel-db-summary/camel/camel-service.c
   branches/camel-db-summary/camel/camel-session.c
   branches/camel-db-summary/camel/camel-smime-context.c
   branches/camel-db-summary/camel/camel-store.c
   branches/camel-db-summary/camel/camel-url.c
   branches/camel-db-summary/camel/camel-vee-folder.c
   branches/camel-db-summary/camel/providers/groupwise/ChangeLog
   branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-folder.c
   branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-store.c
   branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-utils.c
   branches/camel-db-summary/camel/providers/imap/ChangeLog
   branches/camel-db-summary/camel/providers/imap/camel-imap-folder.c
   branches/camel-db-summary/camel/providers/imap/camel-imap-store.c
   branches/camel-db-summary/camel/providers/imap4/ChangeLog
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-engine.c
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-store.c
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c
   branches/camel-db-summary/camel/providers/local/ChangeLog
   branches/camel-db-summary/camel/providers/local/camel-local-provider.c
   branches/camel-db-summary/camel/providers/local/camel-local-store.c
   branches/camel-db-summary/camel/providers/local/camel-maildir-store.c
   branches/camel-db-summary/camel/providers/local/camel-mbox-store.c
   branches/camel-db-summary/camel/providers/local/camel-mh-store.c
   branches/camel-db-summary/camel/providers/local/camel-spool-store.c
   branches/camel-db-summary/camel/providers/local/camel-spool-summary.c
   branches/camel-db-summary/camel/providers/pop3/ChangeLog
   branches/camel-db-summary/camel/providers/pop3/camel-pop3-store.c
   branches/camel-db-summary/camel/tests/message/test4.c
   branches/camel-db-summary/camel/tests/mime-filter/test-tohtml.c
   branches/camel-db-summary/configure.in
   branches/camel-db-summary/libebackend/Makefile.am
   branches/camel-db-summary/libedataserverui/ChangeLog
   branches/camel-db-summary/libedataserverui/e-passwords.c
   branches/camel-db-summary/po/ChangeLog
   branches/camel-db-summary/po/ar.po
   branches/camel-db-summary/po/ca.po
   branches/camel-db-summary/po/en_GB.po
   branches/camel-db-summary/po/es.po
   branches/camel-db-summary/po/et.po
   branches/camel-db-summary/po/he.po
   branches/camel-db-summary/po/nb.po
   branches/camel-db-summary/po/nl.po
   branches/camel-db-summary/po/vi.po
   branches/camel-db-summary/servers/exchange/ChangeLog
   branches/camel-db-summary/servers/exchange/lib/e2k-context.c
   branches/camel-db-summary/servers/exchange/lib/e2k-properties.c
   branches/camel-db-summary/servers/exchange/lib/e2k-utils.c
   branches/camel-db-summary/servers/groupwise/ChangeLog
   branches/camel-db-summary/servers/groupwise/e-gw-connection.c
   branches/camel-db-summary/servers/groupwise/soup-soap-response.c
   branches/camel-db-summary/servers/groupwise/soup-soap-response.h

Modified: branches/camel-db-summary/calendar/libedata-cal/Makefile.am
==============================================================================
--- branches/camel-db-summary/calendar/libedata-cal/Makefile.am	(original)
+++ branches/camel-db-summary/calendar/libedata-cal/Makefile.am	Tue May 27 08:03:02 2008
@@ -48,6 +48,7 @@
 libedata_cal_1_2_la_LIBADD =					\
 	$(top_builddir)/calendar/libecal/libecal-1.2.la		\
 	$(top_builddir)/libedataserver/libedataserver-1.2.la \
+	$(top_builddir)/libebackend/libebackend-1.2.la \
 	$(EVOLUTION_CALENDAR_LIBS)
 
 libedata_cal_1_2_la_LDFLAGS = 								\

Modified: branches/camel-db-summary/calendar/libedata-cal/e-cal-backend-sync.c
==============================================================================
--- branches/camel-db-summary/calendar/libedata-cal/e-cal-backend-sync.c	(original)
+++ branches/camel-db-summary/calendar/libedata-cal/e-cal-backend-sync.c	Tue May 27 08:03:02 2008
@@ -544,10 +544,10 @@
 			tzid = icaltimezone_get_tzid (zone);
 		}
 
-		icaltimezone_free (zone, 1);
-
  		LOCK_WRAPPER (set_default_timezone_sync, (backend, cal, tzid));
 
+		icaltimezone_free (zone, 1);
+
 		return status;
 	}
 

Modified: branches/camel-db-summary/camel/README.HACKING
==============================================================================
--- branches/camel-db-summary/camel/README.HACKING	(original)
+++ branches/camel-db-summary/camel/README.HACKING	Tue May 27 08:03:02 2008
@@ -11,4 +11,4 @@
 
 Thanks.
 
-	Bertrand <Bertrand Guiheneuf aful org>
\ No newline at end of file
+	Bertrand <Bertrand Guiheneuf aful org>

Modified: branches/camel-db-summary/camel/camel-disco-diary.c
==============================================================================
--- branches/camel-db-summary/camel/camel-disco-diary.c	(original)
+++ branches/camel-db-summary/camel/camel-disco-diary.c	Tue May 27 08:03:02 2008
@@ -258,7 +258,7 @@
 		if (folder)
 			g_hash_table_insert (diary->folders, name, folder);
 		else {
-			msg = g_strdup_printf (_("Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized."),
+			msg = g_strdup_printf (_("Could not open '%s':\n%s\nChanges made to this folder will not be resynchronized."),
 					       name, camel_exception_get_description (&ex));
 			camel_exception_clear (&ex);
 			camel_session_alert_user (camel_service_get_session (CAMEL_SERVICE (diary->store)),

Modified: branches/camel-db-summary/camel/camel-disco-folder.c
==============================================================================
--- branches/camel-db-summary/camel/camel-disco-folder.c	(original)
+++ branches/camel-db-summary/camel/camel-disco-folder.c	Tue May 27 08:03:02 2008
@@ -436,7 +436,7 @@
 disco_cache_message (CamelDiscoFolder *disco_folder, const char *uid,
 		     CamelException *ex)
 {
-	g_warning ("CamelDiscoFolder::cache_message not implemented for `%s'",
+	g_warning ("CamelDiscoFolder::cache_message not implemented for '%s'",
 		   camel_type_to_name (CAMEL_OBJECT_GET_TYPE (disco_folder)));
 }
 

Modified: branches/camel-db-summary/camel/camel-disco-store.c
==============================================================================
--- branches/camel-db-summary/camel/camel-disco-store.c	(original)
+++ branches/camel-db-summary/camel/camel-disco-store.c	Tue May 27 08:03:02 2008
@@ -365,7 +365,7 @@
 static gboolean
 can_work_offline (CamelDiscoStore *disco_store)
 {
-	g_warning ("CamelDiscoStore::can_work_offline not implemented for `%s'",
+	g_warning ("CamelDiscoStore::can_work_offline not implemented for '%s'",
 		   camel_type_to_name (CAMEL_OBJECT_GET_TYPE (disco_store)));
 	return FALSE;
 }

Modified: branches/camel-db-summary/camel/camel-filter-search.c
==============================================================================
--- branches/camel-db-summary/camel/camel-filter-search.c	(original)
+++ branches/camel-db-summary/camel/camel-filter-search.c	Tue May 27 08:03:02 2008
@@ -649,7 +649,7 @@
 	d(printf("doing junk test for message from '%s'\n", camel_message_info_from (fms->info)));
 	if (fms->session->junk_plugin != NULL && (camel_message_info_flags (info) & (CAMEL_MESSAGE_JUNK | CAMEL_MESSAGE_NOTJUNK)) == 0) {
 		const GHashTable *ht = camel_session_get_junk_headers (fms->session);
-		struct _camel_header_param *node = ((CamelMessageInfoBase *)info)->headers;
+		const struct _camel_header_param *node = camel_message_info_headers (info);
 
 		while (node && !retval) {
 			if (node->name) {

Modified: branches/camel-db-summary/camel/camel-folder-summary.c
==============================================================================
--- branches/camel-db-summary/camel/camel-folder-summary.c	(original)
+++ branches/camel-db-summary/camel/camel-folder-summary.c	Tue May 27 08:03:02 2008
@@ -24,14 +24,14 @@
 #endif
 
 #include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <pthread.h>
 #include <stdlib.h>
 #include <string.h>
-#include <unistd.h>
-#include <sys/stat.h>
 #include <sys/types.h>
+#include <sys/stat.h>
+#include <pthread.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <errno.h>
 
 #include <glib.h>
 #include <glib/gi18n-lib.h>
@@ -642,7 +642,7 @@
 
 error:
 	if (errno != EINVAL)
-		g_warning ("Cannot load summary file: `%s': %s", s->summary_path, g_strerror (errno));
+		g_warning ("Cannot load summary file: '%s': %s", s->summary_path, g_strerror (errno));
 	
 	CAMEL_SUMMARY_UNLOCK(s, io_lock);
 	fclose (in);
@@ -1929,7 +1929,7 @@
 	irt = camel_header_references_inreplyto_decode (camel_header_raw_find (&h, "in-reply-to", NULL));
 	if (refs || irt) {
 		if (irt) {
-			/* The References field is populated from the ``References'' and/or ``In-Reply-To''
+			/* The References field is populated from the "References" and/or "In-Reply-To"
 			   headers. If both headers exist, take the first thing in the In-Reply-To header
 			   that looks like a Message-ID, and append it to the References header. */
 			
@@ -3155,6 +3155,8 @@
 		return ((const CamelMessageInfoBase *)mi)->user_flags;
 	case CAMEL_MESSAGE_INFO_USER_TAGS:
 		return ((const CamelMessageInfoBase *)mi)->user_tags;
+	case CAMEL_MESSAGE_INFO_HEADERS:
+		return ((const CamelMessageInfoBase *)mi)->headers;
 	default:
 		abort();
 	}

Modified: branches/camel-db-summary/camel/camel-folder-summary.h
==============================================================================
--- branches/camel-db-summary/camel/camel-folder-summary.h	(original)
+++ branches/camel-db-summary/camel/camel-folder-summary.h	Tue May 27 08:03:02 2008
@@ -141,6 +141,8 @@
 	CAMEL_MESSAGE_INFO_USER_FLAGS,
 	CAMEL_MESSAGE_INFO_USER_TAGS,
 
+	CAMEL_MESSAGE_INFO_HEADERS,
+
 	CAMEL_MESSAGE_INFO_LAST
 };
 
@@ -407,6 +409,8 @@
 #define camel_message_info_user_flags(mi) ((const CamelFlag *)camel_message_info_ptr((const CamelMessageInfo *)mi, CAMEL_MESSAGE_INFO_USER_FLAGS))
 #define camel_message_info_user_tags(mi) ((const CamelTag *)camel_message_info_ptr((const CamelMessageInfo *)mi, CAMEL_MESSAGE_INFO_USER_TAGS))
 
+#define camel_message_info_headers(mi) ((const struct _camel_header_param *)camel_message_info_ptr((const CamelMessageInfo *)mi, CAMEL_MESSAGE_INFO_HEADERS))
+
 gboolean camel_message_info_user_flag(const CamelMessageInfo *mi, const char *id);
 const char *camel_message_info_user_tag(const CamelMessageInfo *mi, const char *id);
 

Modified: branches/camel-db-summary/camel/camel-folder.c
==============================================================================
--- branches/camel-db-summary/camel/camel-folder.c	(original)
+++ branches/camel-db-summary/camel/camel-folder.c	Tue May 27 08:03:02 2008
@@ -254,7 +254,7 @@
 static void
 folder_sync (CamelFolder *folder, gboolean expunge, CamelException *ex)
 {
-	w(g_warning ("CamelFolder::sync not implemented for `%s'",
+	w(g_warning ("CamelFolder::sync not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
 }
 
@@ -525,7 +525,7 @@
 static void
 expunge (CamelFolder *folder, CamelException *ex)
 {
-	w(g_warning ("CamelFolder::expunge not implemented for `%s'",
+	w(g_warning ("CamelFolder::expunge not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
 }
 
@@ -628,7 +628,7 @@
 			      _("Unsupported operation: append message: for %s"),
 			      camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder)));
 	
-	w(g_warning ("CamelFolder::append_message not implemented for `%s'",
+	w(g_warning ("CamelFolder::append_message not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
 	
 	return;
@@ -1054,7 +1054,7 @@
 static CamelMimeMessage *
 get_message (CamelFolder *folder, const char *uid, CamelException *ex)
 {
-	w(g_warning ("CamelFolder::get_message not implemented for `%s'",
+	w(g_warning ("CamelFolder::get_message not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
 	
 	return NULL;
@@ -1251,7 +1251,7 @@
 			      camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder)));
 	
 	w(g_warning ("CamelFolder::search_by_expression not implemented for "
-		     "`%s'", camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
+		     "'%s'", camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
 	
 	return NULL;
 }
@@ -1292,7 +1292,7 @@
 			      camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder)));
 	
 	w(g_warning ("CamelFolder::search_by_expression not implemented for "
-		     "`%s'", camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
+		     "'%s'", camel_type_to_name (CAMEL_OBJECT_GET_TYPE (folder))));
 	
 	return NULL;
 }

Modified: branches/camel-db-summary/camel/camel-gpg-context.c
==============================================================================
--- branches/camel-db-summary/camel/camel-gpg-context.c	(original)
+++ branches/camel-db-summary/camel/camel-gpg-context.c	Tue May 27 08:03:02 2008
@@ -834,7 +834,7 @@
 		} else {
 			next_token ((char *) status, &prompt);
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Unexpected request from GnuPG for `%s'"), prompt);
+					      _("Unexpected request from GnuPG for '%s'"), prompt);
 			g_free (prompt);
 			return -1;
 		}

Modified: branches/camel-db-summary/camel/camel-mime-utils.c
==============================================================================
--- branches/camel-db-summary/camel/camel-mime-utils.c	(original)
+++ branches/camel-db-summary/camel/camel-mime-utils.c	Tue May 27 08:03:02 2008
@@ -24,21 +24,19 @@
 #include <config.h>
 #endif
 
-/* POSIX requires <sys/types.h> be included before <regex.h> */
-#include <sys/types.h>
-
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <pthread.h>
-#include <regex.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <time.h>
-#include <unistd.h>
+#include <sys/types.h>
 #include <sys/param.h>  /* for MAXHOSTNAMELEN */
 #include <sys/stat.h>
+#include <pthread.h>
+#include <unistd.h>
+#include <regex.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <ctype.h>
+#include <time.h>
 
 #ifndef MAXHOSTNAMELEN
 #define MAXHOSTNAMELEN 1024

Modified: branches/camel-db-summary/camel/camel-object.c
==============================================================================
--- branches/camel-db-summary/camel/camel-object.c	(original)
+++ branches/camel-db-summary/camel/camel-object.c	Tue May 27 08:03:02 2008
@@ -1158,13 +1158,13 @@
 
 	pair = co_find_pair(klass, name);
 	if (pair) {
-		g_warning("camel_object_class_add_event: `%s' is already declared for '%s'",
+		g_warning("camel_object_class_add_event: '%s' is already declared for '%s'",
 			  name, klass->name);
 		return;
 	}
 
 	if (klass->magic == CAMEL_INTERFACE_MAGIC && prep != NULL) {
-		g_warning("camel_object_class_add_event: `%s', CamelInterface '%s' may not have an event prep function - ignored",
+		g_warning("camel_object_class_add_event: '%s', CamelInterface '%s' may not have an event prep function - ignored",
 			  name, klass->name);
 		prep = NULL;
 	}
@@ -1306,7 +1306,7 @@
 			}
 		}
 
-		g_warning("camel_object_hook_event: trying to hook event `%s' in class `%s' with no defined events.",
+		g_warning("camel_object_hook_event: trying to hook event '%s' in class '%s' with no defined events.",
 			  name, obj->klass->name);
 
 		return 0;
@@ -1343,7 +1343,7 @@
 	g_return_if_fail (id != 0);
 
 	if (obj->hooks == NULL) {
-		g_warning("camel_object_unhook_event: trying to unhook `%u` from an instance of `%s' with no hooks",
+		g_warning("camel_object_unhook_event: trying to unhook '%u' from an instance of '%s' with no hooks",
 			  id, obj->klass->name);
 		return;
 	}
@@ -1373,7 +1373,7 @@
 	}
 	camel_object_unget_hooks(obj);
 
-	g_warning("camel_object_unhook_event: cannot find hook id %u in instance of `%s'",
+	g_warning("camel_object_unhook_event: cannot find hook id %u in instance of '%s'",
 		  id, obj->klass->name);
 }
 
@@ -1389,7 +1389,7 @@
 	g_return_if_fail (func != NULL);
 
 	if (obj->hooks == NULL) {
-		g_warning("camel_object_unhook_event: trying to unhook `%s` from an instance of `%s' with no hooks",
+		g_warning("camel_object_unhook_event: trying to unhook '%s' from an instance of '%s' with no hooks",
 			  name, obj->klass->name);
 		return;
 	}
@@ -1421,7 +1421,7 @@
 	}
 	camel_object_unget_hooks(obj);
 
-	g_warning("camel_object_unhook_event: cannot find hook/data pair %p/%p in an instance of `%s' attached to `%s'",
+	g_warning("camel_object_unhook_event: cannot find hook/data pair %p/%p in an instance of '%s' attached to '%s'",
 		  (void *) func, data, obj->klass->name, name);
 }
 
@@ -1456,7 +1456,7 @@
 		}
 	}
 
-	g_warning("camel_object_trigger_event: trying to trigger unknown event `%s' in class `%s'",
+	g_warning("camel_object_trigger_event: trying to trigger unknown event '%s' in class '%s'",
 		  name, obj->klass->name);
 
 	return;

Modified: branches/camel-db-summary/camel/camel-offline-journal.c
==============================================================================
--- branches/camel-db-summary/camel/camel-offline-journal.c	(original)
+++ branches/camel-db-summary/camel/camel-offline-journal.c	Tue May 27 08:03:02 2008
@@ -161,7 +161,7 @@
 	
 	if ((fd = g_open (journal->filename, O_CREAT | O_TRUNC | O_WRONLY | O_BINARY, 0666)) == -1) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot write offline journal for folder `%s': %s"),
+				      _("Cannot write offline journal for folder '%s': %s"),
 				      journal->folder->full_name, g_strerror (errno));
 		return -1;
 	}
@@ -184,7 +184,7 @@
  exception:
 	
 	camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-			      _("Cannot write offline journal for folder `%s': %s"),
+			      _("Cannot write offline journal for folder '%s': %s"),
 			      journal->folder->full_name, g_strerror (errno));
 	
 	fclose (fp);

Modified: branches/camel-db-summary/camel/camel-provider.c
==============================================================================
--- branches/camel-db-summary/camel/camel-provider.c	(original)
+++ branches/camel-db-summary/camel/camel-provider.c	Tue May 27 08:03:02 2008
@@ -373,7 +373,7 @@
 
 	if (provider == NULL)
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SERVICE_URL_INVALID,
-				     _("No provider available for protocol `%s'"),
+				     _("No provider available for protocol '%s'"),
 				     protocol);
 fail:
 	UNLOCK();

Modified: branches/camel-db-summary/camel/camel-sasl-kerberos4.c
==============================================================================
--- branches/camel-db-summary/camel/camel-sasl-kerberos4.c	(original)
+++ branches/camel-db-summary/camel/camel-sasl-kerberos4.c	Tue May 27 08:03:02 2008
@@ -197,7 +197,7 @@
 		 * protection mechanisms supported by the server"
 		 */
 		if (!(token->data[4] & KERBEROS_V4_PROTECTION_NONE)) {
-			g_warning ("Server does not support `no protection' :-(");
+			g_warning ("Server does not support 'no protection' :-(");
 			goto lose;
 		}
 

Modified: branches/camel-db-summary/camel/camel-service.c
==============================================================================
--- branches/camel-db-summary/camel/camel-service.c	(original)
+++ branches/camel-db-summary/camel/camel-service.c	Tue May 27 08:03:02 2008
@@ -492,7 +492,7 @@
 static char *
 get_name (CamelService *service, gboolean brief)
 {
-	w(g_warning ("CamelService::get_name not implemented for `%s'",
+	w(g_warning ("CamelService::get_name not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (service))));
 	return g_strdup ("???");
 }		

Modified: branches/camel-db-summary/camel/camel-session.c
==============================================================================
--- branches/camel-db-summary/camel/camel-session.c	(original)
+++ branches/camel-db-summary/camel/camel-session.c	Tue May 27 08:03:02 2008
@@ -174,7 +174,7 @@
 	provider = camel_provider_get(url->protocol, ex);
 	if (provider && !provider->object_types[type]) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_URL_INVALID,
-				      _("No provider available for protocol `%s'"),
+				      _("No provider available for protocol '%s'"),
 				      url->protocol);
 		provider = NULL;
 	}

Modified: branches/camel-db-summary/camel/camel-smime-context.c
==============================================================================
--- branches/camel-db-summary/camel/camel-smime-context.c	(original)
+++ branches/camel-db-summary/camel/camel-smime-context.c	Tue May 27 08:03:02 2008
@@ -775,7 +775,7 @@
 	for (i=0;i<recipients->len;i++) {
 		recipient_certs[i] = CERT_FindCertByNicknameOrEmailAddr(p->certdb, recipients->pdata[i]);
 		if (recipient_certs[i] == NULL) {
-			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot find certificate for `%s'"), recipients->pdata[i]);
+			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot find certificate for '%s'"), recipients->pdata[i]);
 			goto fail;
 		}
 	}

Modified: branches/camel-db-summary/camel/camel-store.c
==============================================================================
--- branches/camel-db-summary/camel/camel-store.c	(original)
+++ branches/camel-db-summary/camel/camel-store.c	Tue May 27 08:03:02 2008
@@ -235,7 +235,7 @@
 static CamelFolder *
 get_folder (CamelStore *store, const char *folder_name, guint32 flags, CamelException *ex)
 {
-	w(g_warning ("CamelStore::get_folder not implemented for `%s'",
+	w(g_warning ("CamelStore::get_folder not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 	
 	camel_exception_setv (ex, CAMEL_EXCEPTION_STORE_INVALID,
@@ -272,7 +272,7 @@
 		folder = camel_object_bag_reserve(store->folders, folder_name);
 		if (folder && (flags & CAMEL_STORE_FOLDER_EXCL)) {
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Cannot create folder `%s': folder exists"),
+					      _("Cannot create folder '%s': folder exists"),
 					      folder_name);
                         camel_object_bag_abort (store->folders, folder_name);
 			camel_object_unref (folder);
@@ -332,7 +332,7 @@
 create_folder (CamelStore *store, const char *parent_name,
 	       const char *folder_name, CamelException *ex)
 {
-	w(g_warning ("CamelStore::create_folder not implemented for `%s'",
+	w(g_warning ("CamelStore::create_folder not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 	
 	camel_exception_setv (ex, CAMEL_EXCEPTION_STORE_INVALID,
@@ -407,7 +407,7 @@
 static void
 delete_folder (CamelStore *store, const char *folder_name, CamelException *ex)
 {
-	w(g_warning ("CamelStore::delete_folder not implemented for `%s'",
+	w(g_warning ("CamelStore::delete_folder not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 }
 
@@ -449,7 +449,7 @@
 static void
 rename_folder (CamelStore *store, const char *old_name, const char *new_name, CamelException *ex)
 {
-	w(g_warning ("CamelStore::rename_folder not implemented for `%s'",
+	w(g_warning ("CamelStore::rename_folder not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 }
 
@@ -697,7 +697,7 @@
 static CamelFolderInfo *
 get_folder_info (CamelStore *store, const char *top, guint32 flags, CamelException *ex)
 {
-	w(g_warning ("CamelStore::get_folder_info not implemented for `%s'",
+	w(g_warning ("CamelStore::get_folder_info not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 	
 	return NULL;
@@ -839,7 +839,7 @@
 static void
 free_folder_info (CamelStore *store, CamelFolderInfo *fi)
 {
-	w(g_warning ("CamelStore::free_folder_info not implemented for `%s'",
+	w(g_warning ("CamelStore::free_folder_info not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 }
 
@@ -1109,7 +1109,7 @@
 static gboolean
 folder_subscribed(CamelStore *store, const char *folder_name)
 {
-	w(g_warning ("CamelStore::folder_subscribed not implemented for `%s'",
+	w(g_warning ("CamelStore::folder_subscribed not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 	
 	return FALSE;
@@ -1144,7 +1144,7 @@
 static void
 subscribe_folder(CamelStore *store, const char *folder_name, CamelException *ex)
 {
-	w(g_warning ("CamelStore::subscribe_folder not implemented for `%s'",
+	w(g_warning ("CamelStore::subscribe_folder not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 }
 
@@ -1172,7 +1172,7 @@
 static void
 unsubscribe_folder(CamelStore *store, const char *folder_name, CamelException *ex)
 {
-	w(g_warning ("CamelStore::unsubscribe_folder not implemented for `%s'",
+	w(g_warning ("CamelStore::unsubscribe_folder not implemented for '%s'",
 		     camel_type_to_name (CAMEL_OBJECT_GET_TYPE (store))));
 }
 

Modified: branches/camel-db-summary/camel/camel-url.c
==============================================================================
--- branches/camel-db-summary/camel/camel-url.c	(original)
+++ branches/camel-db-summary/camel/camel-url.c	Tue May 27 08:03:02 2008
@@ -310,7 +310,7 @@
 	if (!url->protocol) {
 		camel_url_free (url);
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_URL_INVALID,
-				      _("Could not parse URL `%s'"),
+				      _("Could not parse URL '%s'"),
 				      url_string);
 		return NULL;
 	}

Modified: branches/camel-db-summary/camel/camel-vee-folder.c
==============================================================================
--- branches/camel-db-summary/camel/camel-vee-folder.c	(original)
+++ branches/camel-db-summary/camel/camel-vee-folder.c	Tue May 27 08:03:02 2008
@@ -483,7 +483,7 @@
 			char *desc;
 
 			camel_object_get(f, NULL, CAMEL_OBJECT_DESCRIPTION, &desc, NULL);
-			camel_exception_setv(ex, ex->id, _("Error storing `%s': %s"), desc, ex->desc);
+			camel_exception_setv(ex, ex->id, _("Error storing '%s': %s"), desc, ex->desc);
 			break;
 		}
 

Modified: branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-folder.c
==============================================================================
--- branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-folder.c	(original)
+++ branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-folder.c	Tue May 27 08:03:02 2008
@@ -201,6 +201,7 @@
 
 	camel_message_info_free (&mi->info);
 	g_free (container_id);
+	g_object_unref (item);
 	return msg;
 }
 
@@ -1449,6 +1450,7 @@
 		}
 		/******************** Caching stuff ends *************************/
 		i++;
+		g_object_unref (item);
 	}
 	camel_operation_end (NULL);
 	g_free (container_id);
@@ -1568,7 +1570,7 @@
 				str = g_string_append (str, " ");
 			}
 
-                        if (org->display_name[0] == '\0') { 
+                        if (org->display_name && org->display_name[0] == '\0') { 
 				
                                 str = g_string_append (str, org->email);
 				str = g_string_append (str, " ");
@@ -2031,7 +2033,7 @@
 		is_ok = TRUE;
 
 	if (!is_ok) {
-		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot append message to folder `%s': %s"),
+		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot append message to folder '%s': %s"),
 				folder->full_name, e_gw_connection_get_error_message (status));
 		return;
 	}
@@ -2073,7 +2075,7 @@
 	status = e_gw_connection_add_item (cnc, container_id, id);
 	g_message ("Adding %s to %s", id, container_id);
 	if (status != E_GW_CONNECTION_STATUS_OK) {
-		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot append message to folder `%s': %s"),
+		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot append message to folder '%s': %s"),
 				folder->full_name, e_gw_connection_get_error_message (status));
 
 		if (appended_uid)
@@ -2167,8 +2169,8 @@
 							_("This message is not available in offline mode."));
 
 				} else {
-					camel_folder_summary_remove_uid (source->summary, uids->pdata[index]);
-					camel_folder_change_info_remove_uid (changes, uids->pdata[index]);
+					camel_folder_summary_remove_uid (source->summary, uids->pdata[i]);
+					camel_folder_change_info_remove_uid (changes, uids->pdata[i]);
 				}
 			}
 		}

Modified: branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-store.c	(original)
+++ branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-store.c	Tue May 27 08:03:02 2008
@@ -75,7 +75,7 @@
 static CamelOfflineStoreClass *parent_class = NULL;
 
 extern CamelServiceAuthType camel_groupwise_password_authtype; /*for the query_auth_types function*/
-CamelFolderInfo *convert_to_folder_info (CamelGroupwiseStore *store, EGwContainer *container, const char *url, CamelException *ex);
+static CamelFolderInfo *convert_to_folder_info (CamelGroupwiseStore *store, EGwContainer *container, const char *url, CamelException *ex);
 static void groupwise_folders_sync (CamelGroupwiseStore *store, CamelException *ex);
 static int match_path(const char *path, const char *name);
 
@@ -783,7 +783,7 @@
 	return;
 }
 
-CamelFolderInfo *
+static CamelFolderInfo *
 convert_to_folder_info (CamelGroupwiseStore *store, EGwContainer *container, const char *url, CamelException *ex)
 {
 	const char *name = NULL, *id = NULL, *parent = NULL;
@@ -1304,7 +1304,7 @@
 	char *temp_new = NULL;
 	
 	if (groupwise_is_system_folder (old_name)) {
-		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot rename Groupwise folder `%s' to `%s'"),
+		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot rename Groupwise folder '%s' to '%s'"),
 				      old_name, new_name);
 		return;
 	}
@@ -1325,7 +1325,7 @@
 
 	if (!container_id || e_gw_connection_rename_folder (priv->cnc, container_id , temp_new) != E_GW_CONNECTION_STATUS_OK)
 	{
-		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot rename Groupwise folder `%s' to `%s'"),
+		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot rename Groupwise folder '%s' to '%s'"),
 				      old_name, new_name);
 		CAMEL_SERVICE_REC_UNLOCK (groupwise_store, connect_lock);
 		return;

Modified: branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-utils.c
==============================================================================
--- branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-utils.c	(original)
+++ branches/camel-db-summary/camel/providers/groupwise/camel-groupwise-utils.c	Tue May 27 08:03:02 2008
@@ -83,7 +83,7 @@
 	ppath_len++;	/* For the separating slash.  */
 
 	/* Take account of the fact that we need to translate every
-	 * separator into `subfolders/'.
+	 * separator into 'subfolders/'.
 	 */
 	p = vpath;
 	while (1) {
@@ -117,7 +117,7 @@
 			break;
 		}
 
-		memcpy (dp, p, newp - p + 1); /* `+ 1' to copy the slash too.  */
+		memcpy (dp, p, newp - p + 1); /* '+ 1' to copy the slash too.  */
 		dp += newp - p + 1;
 
 		memcpy (dp, SUBFOLDER_DIR_NAME, SUBFOLDER_DIR_NAME_LEN);

Modified: branches/camel-db-summary/camel/providers/imap/camel-imap-folder.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap/camel-imap-folder.c	(original)
+++ branches/camel-db-summary/camel/providers/imap/camel-imap-folder.c	Tue May 27 08:03:02 2008
@@ -1181,7 +1181,7 @@
 		/* FIXME: Sankar: What about custom flags ? */
 		flaglist = imap_create_flag_list (unset ? folder->permanent_flags : info->info.flags & folder->permanent_flags, (CamelMessageInfo *)info, folder->permanent_flags);
 
-		/* Note: to `unset' flags, use -FLAGS.SILENT (<flag list>) */
+		/* Note: to 'unset' flags, use -FLAGS.SILENT (<flag list>) */
 		response = camel_imap_command (store, folder, &local_ex,
 					       "UID STORE %s %sFLAGS.SILENT %s",
 					       set, unset ? "-" : "", flaglist);

Modified: branches/camel-db-summary/camel/providers/imap/camel-imap-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap/camel-imap-store.c	(original)
+++ branches/camel-db-summary/camel/providers/imap/camel-imap-store.c	Tue May 27 08:03:02 2008
@@ -2039,7 +2039,7 @@
 		}
 	} else if (flags & CAMEL_STORE_FOLDER_EXCL) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot create folder `%s': folder exists."),
+				      _("Cannot create folder '%s': folder exists."),
 				      folder_name);
 		
 		camel_imap_response_free_without_processing (imap_store, response);

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-engine.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-engine.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-engine.c	Tue May 27 08:03:02 2008
@@ -447,13 +447,13 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot select folder `%s': Invalid mailbox name"),
+				      _("Cannot select folder '%s': Invalid mailbox name"),
 				      folder->full_name);
 		retval = -1;
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot select folder `%s': Bad command"),
+				      _("Cannot select folder '%s': Bad command"),
 				      folder->full_name);
 		retval = -1;
 		break;

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c	Tue May 27 08:03:02 2008
@@ -420,7 +420,7 @@
 		/* we *do* care if summary loading fails here though */
 		if (camel_folder_summary_load (folder->summary) == -1) {
 			camel_exception_setv (ex, CAMEL_EXCEPTION_FOLDER_INVALID_PATH,
-					      _("Cannot access folder `%s': %s"),
+					      _("Cannot access folder '%s': %s"),
 					      full_name, g_strerror (ENOENT));
 			
 			camel_object_unref (folder);
@@ -479,13 +479,13 @@
 		case CAMEL_IMAP4_RESULT_NO:
 			/* FIXME: would be good to save the NO reason into the err message */
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Cannot sync flags to folder `%s': Unknown"),
+					      _("Cannot sync flags to folder '%s': Unknown"),
 					      folder->full_name);
 			retval = -1;
 			break;
 		case CAMEL_IMAP4_RESULT_BAD:
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Cannot sync flags to folder `%s': Bad command"),
+					      _("Cannot sync flags to folder '%s': Bad command"),
 					      folder->full_name);
 			retval = -1;
 			break;
@@ -625,12 +625,12 @@
 		case CAMEL_IMAP4_RESULT_NO:
 			/* FIXME: would be good to save the NO reason into the err message */
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Cannot expunge folder `%s': Unknown"),
+					      _("Cannot expunge folder '%s': Unknown"),
 					      folder->full_name);
 			break;
 		case CAMEL_IMAP4_RESULT_BAD:
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Cannot expunge folder `%s': Bad command"),
+					      _("Cannot expunge folder '%s': Bad command"),
 					      folder->full_name);
 			break;
 		}
@@ -886,12 +886,12 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot get message %s from folder `%s': No such message"),
+				      _("Cannot get message %s from folder '%s': No such message"),
 				      uid, folder->full_name);
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot get message %s from folder `%s': Bad command"),
+				      _("Cannot get message %s from folder '%s': Bad command"),
 				      uid, folder->full_name);
 		break;
 	}
@@ -935,7 +935,7 @@
 	
 	if (((CamelIMAP4Folder *) folder)->read_only) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot append message to folder `%s': Folder is read-only"),
+				      _("Cannot append message to folder '%s': Folder is read-only"),
 				      folder->full_name);
 		return;
 	}
@@ -1028,7 +1028,7 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: can we give the user any more information? */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot append message to folder `%s': Unknown error"),
+				      _("Cannot append message to folder '%s': Unknown error"),
 				      folder->full_name);
 		
 		for (i = 0; i < ic->resp_codes->len; i++) {
@@ -1058,7 +1058,7 @@
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot append message to folder `%s': Bad command"),
+				      _("Cannot append message to folder '%s': Bad command"),
 				      folder->full_name);
 		
 		break;
@@ -1178,11 +1178,11 @@
 			/* FIXME: would be good to save the NO reason into the err message */
 			if (move) {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-						      _("Cannot move messages from folder `%s' to folder `%s': Unknown"),
+						      _("Cannot move messages from folder '%s' to folder '%s': Unknown"),
 						      src->full_name, dest->full_name);
 			} else {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-						      _("Cannot copy messages from folder `%s' to folder `%s': Unknown"),
+						      _("Cannot copy messages from folder '%s' to folder '%s': Unknown"),
 						      src->full_name, dest->full_name);
 			}
 			
@@ -1190,11 +1190,11 @@
 		case CAMEL_IMAP4_RESULT_BAD:
 			if (move) {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-						      _("Cannot move messages from folder `%s' to folder `%s': Bad command"),
+						      _("Cannot move messages from folder '%s' to folder '%s': Bad command"),
 						      src->full_name, dest->full_name);
 			} else {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-						      _("Cannot copy messages from folder `%s' to folder `%s': Bad command"),
+						      _("Cannot copy messages from folder '%s' to folder '%s': Bad command"),
 						      src->full_name, dest->full_name);
 			}
 			

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-store.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-store.c	Tue May 27 08:03:02 2008
@@ -737,7 +737,7 @@
 	
 	if (ic->result != CAMEL_IMAP4_RESULT_OK) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot get folder `%s' on IMAP server %s: Unknown"),
+				      _("Cannot get folder '%s' on IMAP server %s: Unknown"),
 				      folder_name, ((CamelService *) store)->url->host);
 		camel_imap4_command_unref (ic);
 		goto done;
@@ -818,7 +818,7 @@
 		camel_imap4_command_unref (ic);
 		
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot get LIST information for `%s' on IMAP server %s: %s"),
+				      _("Cannot get LIST information for '%s' on IMAP server %s: %s"),
 				      folder_name, engine->url->host, ic->result == CAMEL_IMAP4_RESULT_BAD ?
 				      _("Bad command") : _("Unknown"));
 		
@@ -899,12 +899,12 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot create folder `%s': Invalid mailbox name"),
+				      _("Cannot create folder '%s': Invalid mailbox name"),
 				      folder_name);
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot create folder `%s': Bad command"),
+				      _("Cannot create folder '%s': Bad command"),
 				      folder_name);
 		break;
 	default:
@@ -1010,7 +1010,7 @@
 
 	if (!g_ascii_strcasecmp (folder_name, "INBOX")) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot delete folder `%s': Special folder"),
+				      _("Cannot delete folder '%s': Special folder"),
 				      folder_name);
 
 		return;
@@ -1076,12 +1076,12 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot delete folder `%s': Invalid mailbox name"),
+				      _("Cannot delete folder '%s': Invalid mailbox name"),
 				      folder_name);
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot delete folder `%s': Bad command"),
+				      _("Cannot delete folder '%s': Bad command"),
 				      folder_name);
 		break;
 	}
@@ -1101,7 +1101,7 @@
 	
 	if (!g_ascii_strcasecmp (old_name, "INBOX")) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot rename folder `%s' to `%s': Special folder"),
+				      _("Cannot rename folder '%s' to '%s': Special folder"),
 				      old_name, new_name);
 		
 		return;
@@ -1139,12 +1139,12 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot rename folder `%s' to `%s': Invalid mailbox name"),
+				      _("Cannot rename folder '%s' to '%s': Invalid mailbox name"),
 				      old_name, new_name);
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot rename folder `%s' to `%s': Bad command"),
+				      _("Cannot rename folder '%s' to '%s': Bad command"),
 				      old_name, new_name);
 		break;
 	}
@@ -1572,7 +1572,7 @@
 		camel_imap4_command_unref (ic);
 		
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot get %s information for pattern `%s' on IMAP server %s: %s"),
+				      _("Cannot get %s information for pattern '%s' on IMAP server %s: %s"),
 				      cmd, pattern, engine->url->host, ic->result == CAMEL_IMAP4_RESULT_BAD ?
 				      _("Bad command") : _("Unknown"));
 		
@@ -1678,12 +1678,12 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot subscribe to folder `%s': Invalid mailbox name"),
+				      _("Cannot subscribe to folder '%s': Invalid mailbox name"),
 				      folder_name);
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot subscribe to folder `%s': Bad command"),
+				      _("Cannot subscribe to folder '%s': Bad command"),
 				      folder_name);
 		break;
 	}
@@ -1750,12 +1750,12 @@
 	case CAMEL_IMAP4_RESULT_NO:
 		/* FIXME: would be good to save the NO reason into the err message */
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot unsubscribe from folder `%s': Invalid mailbox name"),
+				      _("Cannot unsubscribe from folder '%s': Invalid mailbox name"),
 				      folder_name);
 		break;
 	case CAMEL_IMAP4_RESULT_BAD:
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot unsubscribe from folder `%s': Bad command"),
+				      _("Cannot unsubscribe from folder '%s': Bad command"),
 				      folder_name);
 		break;
 	}

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c	Tue May 27 08:03:02 2008
@@ -446,7 +446,7 @@
 		return NULL;
 	
 	if (irt) {
-		/* The References field is populated from the `References' and/or `In-Reply-To'
+		/* The References field is populated from the 'References' and/or 'In-Reply-To'
 		   headers. If both headers exist, take the first thing in the In-Reply-To header
 		   that looks like a Message-ID, and append it to the References header. */
 		

Modified: branches/camel-db-summary/camel/providers/local/camel-local-provider.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-local-provider.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-local-provider.c	Tue May 27 08:03:02 2008
@@ -45,7 +45,7 @@
 	CAMEL_PROVIDER_CONF_DEFAULT_PATH,
 	{ CAMEL_PROVIDER_CONF_SECTION_START, "general", NULL, N_("Options") },
 	{ CAMEL_PROVIDER_CONF_CHECKBOX, "dotfolders", NULL,
-	  N_("_Use the `.folders' folder summary file (exmh)"), "0" },
+	  N_("_Use the '.folders' folder summary file (exmh)"), "0" },
 	{ CAMEL_PROVIDER_CONF_SECTION_END },
 	{ CAMEL_PROVIDER_CONF_END }
 };

Modified: branches/camel-db-summary/camel/providers/local/camel-local-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-local-store.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-local-store.c	Tue May 27 08:03:02 2008
@@ -449,7 +449,7 @@
 	str = g_strdup_printf("%s.ev-summary", name);
 	if (g_unlink(str) == -1 && errno != ENOENT) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not delete folder summary file `%s': %s"),
+				      _("Could not delete folder summary file '%s': %s"),
 				      str, g_strerror (errno));
 		g_free(str);
 		g_free (name);
@@ -459,7 +459,7 @@
 	str = g_strdup_printf("%s.ev-summary-meta", name);
 	if (g_unlink(str) == -1 && errno != ENOENT) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not delete folder summary file `%s': %s"),
+				      _("Could not delete folder summary file '%s': %s"),
 				      str, g_strerror (errno));
 		g_free(str);
 		g_free (name);
@@ -469,7 +469,7 @@
 	str = g_strdup_printf("%s.ibex", name);
 	if (camel_text_index_remove(str) == -1 && errno != ENOENT) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not delete folder index file `%s': %s"),
+				      _("Could not delete folder index file '%s': %s"),
 				      str, g_strerror (errno));
 		g_free(str);
 		g_free (name);
@@ -492,7 +492,7 @@
 	
 	if (g_unlink (str) == -1 && errno != ENOENT) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not delete folder meta file `%s': %s"),
+				      _("Could not delete folder meta file '%s': %s"),
 				      str, g_strerror (errno));
 		g_free (name);
 		g_free (str);

Modified: branches/camel-db-summary/camel/providers/local/camel-maildir-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-maildir-store.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-maildir-store.c	Tue May 27 08:03:02 2008
@@ -144,7 +144,7 @@
 			    || mkdir(cur, 0700) != 0
 			    || mkdir(new, 0700) != 0) {
 				camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-						     _("Cannot create folder `%s': %s"),
+						     _("Cannot create folder '%s': %s"),
 						     folder_name, g_strerror(errno));
 				rmdir(tmp);
 				rmdir(cur);
@@ -157,11 +157,11 @@
 		/* folder doesn't exist, see if we should create it */
 		if (errno != ENOENT) {
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Cannot get folder `%s': %s"),
+					      _("Cannot get folder '%s': %s"),
 					      folder_name, g_strerror (errno));
 		} else if ((flags & CAMEL_STORE_FOLDER_CREATE) == 0) {
 			camel_exception_setv (ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-					      _("Cannot get folder `%s': folder does not exist."),
+					      _("Cannot get folder '%s': folder does not exist."),
 					      folder_name);
 		} else {
 			if (mkdir(name, 0700) != 0
@@ -169,7 +169,7 @@
 			    || mkdir(cur, 0700) != 0
 			    || mkdir(new, 0700) != 0) {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-						      _("Cannot create folder `%s': %s"),
+						      _("Cannot create folder '%s': %s"),
 						      folder_name, g_strerror (errno));
 				rmdir(tmp);
 				rmdir(cur);
@@ -185,10 +185,10 @@
 		   || stat(new, &st) != 0 || !S_ISDIR(st.st_mode)) {
 		/* folder exists, but not maildir */
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Cannot get folder `%s': not a maildir directory."), name);
+				     _("Cannot get folder '%s': not a maildir directory."), name);
 	} else if (flags & CAMEL_STORE_FOLDER_EXCL) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot create folder `%s': folder exists."),
+				      _("Cannot create folder '%s': folder exists."),
 				      folder_name);
 	} else {
 		folder = camel_maildir_folder_new(store, folder_name, flags, ex);
@@ -230,7 +230,7 @@
 	    || stat(cur, &st) == -1 || !S_ISDIR(st.st_mode)
 	    || stat(new, &st) == -1 || !S_ISDIR(st.st_mode)) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not delete folder `%s': %s"),
+				      _("Could not delete folder '%s': %s"),
 				      folder_name, errno ? g_strerror (errno) :
 				      _("not a maildir directory"));
 	} else {
@@ -268,7 +268,7 @@
 			mkdir(new, 0700);
 			mkdir(tmp, 0700);
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-					      _("Could not delete folder `%s': %s"),
+					      _("Could not delete folder '%s': %s"),
 					      folder_name, g_strerror (err));
 		} else {
 			/* and remove metadata */
@@ -436,7 +436,7 @@
 		if (dir == NULL) {
 			g_free(name);
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Could not scan folder `%s': %s"),
+					     _("Could not scan folder '%s': %s"),
 					     root, g_strerror(errno));
 			goto fail;
 		}

Modified: branches/camel-db-summary/camel/providers/local/camel-mbox-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-mbox-store.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-mbox-store.c	Tue May 27 08:03:02 2008
@@ -144,7 +144,7 @@
 		
 		if (errno != ENOENT) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Cannot get folder `%s': %s"),
+					     _("Cannot get folder '%s': %s"),
 					     folder_name, g_strerror (errno));
 			g_free(name);
 			return NULL;
@@ -152,7 +152,7 @@
 		
 		if ((flags & CAMEL_STORE_FOLDER_CREATE) == 0) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-					     _("Cannot get folder `%s': folder does not exist."),
+					     _("Cannot get folder '%s': folder does not exist."),
 					     folder_name);
 			g_free(name);
 			return NULL;
@@ -173,7 +173,7 @@
 		dirname = g_path_get_dirname(name);
 		if (g_mkdir_with_parents(dirname, 0777) == -1 && errno != EEXIST) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Cannot create folder `%s': %s"),
+					     _("Cannot create folder '%s': %s"),
 					     folder_name, g_strerror (errno));
 			g_free(dirname);
 			g_free(name);
@@ -185,7 +185,7 @@
 		fd = g_open(name, O_LARGEFILE | O_WRONLY | O_CREAT | O_APPEND | O_BINARY, 0666);
 		if (fd == -1) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Cannot create folder `%s': %s"),
+					     _("Cannot create folder '%s': %s"),
 					     folder_name, g_strerror (errno));
 			g_free(name);
 			return NULL;
@@ -195,13 +195,13 @@
 		close(fd);
 	} else if (!S_ISREG(st.st_mode)) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Cannot get folder `%s': not a regular file."),
+				     _("Cannot get folder '%s': not a regular file."),
 				     folder_name);
 		g_free(name);
 		return NULL;
 	} else if (flags & CAMEL_STORE_FOLDER_EXCL) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot create folder `%s': folder exists."),
+				      _("Cannot create folder '%s': folder exists."),
 				      folder_name);
 		g_free (name);
 		return NULL;
@@ -225,7 +225,7 @@
 	
 	if (g_rmdir(path) == -1 && errno != ENOENT) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder `%s':\n%s"),
+				     _("Could not delete folder '%s':\n%s"),
 				     folder_name, g_strerror(errno));
 		g_free(path);
 		g_free(name);
@@ -236,7 +236,7 @@
 	
 	if (g_stat(name, &st) == -1) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder `%s':\n%s"),
+				     _("Could not delete folder '%s':\n%s"),
 				     folder_name, g_strerror(errno));
 		g_free(name);
 		return;
@@ -244,14 +244,14 @@
 	
 	if (!S_ISREG(st.st_mode)) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-				     _("`%s' is not a regular file."), name);
+				     _("'%s' is not a regular file."), name);
 		g_free(name);
 		return;
 	}
 	
 	if (st.st_size != 0) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_FOLDER_NON_EMPTY,
-				     _("Folder `%s' is not empty. Not deleted."),
+				     _("Folder '%s' is not empty. Not deleted."),
 				     folder_name);
 		g_free(name);
 		return;
@@ -259,7 +259,7 @@
 	
 	if (g_unlink(name) == -1 && errno != ENOENT) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder `%s':\n%s"),
+				     _("Could not delete folder '%s':\n%s"),
 				     name, g_strerror(errno));
 		g_free(name);
 		return;
@@ -273,7 +273,7 @@
 	path = camel_local_store_get_meta_path(store, folder_name, ".ev-summary");
 	if (g_unlink(path) == -1 && errno != ENOENT) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder summary file `%s': %s"),
+				     _("Could not delete folder summary file '%s': %s"),
 				     path, g_strerror(errno));
 		g_free(path);
 		g_free(name);
@@ -285,7 +285,7 @@
 	path = camel_local_store_get_meta_path(store, folder_name, ".ev-summary-meta");
 	if (g_unlink(path) == -1 && errno != ENOENT) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder summary file `%s': %s"),
+				     _("Could not delete folder summary file '%s': %s"),
 				     path, g_strerror(errno));
 		g_free(path);
 		g_free(name);
@@ -297,7 +297,7 @@
 	path = camel_local_store_get_meta_path(store, folder_name, ".ibex");
 	if (camel_text_index_remove(path) == -1 && errno != ENOENT) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder index file `%s': %s"),
+				     _("Could not delete folder index file '%s': %s"),
 				     path, g_strerror(errno));
 		g_free(path);
 		g_free(name);
@@ -321,7 +321,7 @@
 
 	if (g_unlink(path) == -1 && errno != ENOENT) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-				     _("Could not delete folder meta file `%s': %s"),
+				     _("Could not delete folder meta file '%s': %s"),
 				     path, g_strerror(errno));
 
 		g_free(path);
@@ -375,7 +375,7 @@
 	
 	dir = g_path_get_dirname(path);
 	if (g_mkdir_with_parents(dir, 0777) == -1 && errno != EEXIST) {
-		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot create directory `%s': %s."),
+		camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot create directory '%s': %s."),
 				     dir, g_strerror(errno));
 		
 		g_free(path);
@@ -495,7 +495,7 @@
 	if (g_mkdir_with_parents(newdir, 0777) == -1) {
 		if (errno != EEXIST) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Could not rename `%s': `%s': %s"),
+					     _("Could not rename '%s': '%s': %s"),
 					     old, new, g_strerror(errno));
 			g_free(oldibex);
 			g_free(newibex);

Modified: branches/camel-db-summary/camel/providers/local/camel-mh-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-mh-store.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-mh-store.c	Tue May 27 08:03:02 2008
@@ -214,14 +214,14 @@
 	if (stat(name, &st) == -1) {
 		if (errno != ENOENT) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Cannot get folder `%s': %s"),
+					     _("Cannot get folder '%s': %s"),
 					     folder_name, g_strerror (errno));
 			g_free (name);
 			return NULL;
 		}
 		if ((flags & CAMEL_STORE_FOLDER_CREATE) == 0) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-					     _("Cannot get folder `%s': folder does not exist."),
+					     _("Cannot get folder '%s': folder does not exist."),
 					     folder_name);
 			g_free (name);
 			return NULL;
@@ -229,7 +229,7 @@
 
 		if (mkdir(name, 0777) != 0) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM,
-					     _("Could not create folder `%s': %s"),
+					     _("Could not create folder '%s': %s"),
 					     folder_name, g_strerror (errno));
 			g_free (name);
 			return NULL;
@@ -241,12 +241,12 @@
 			folders_update(((CamelLocalStore *)store)->toplevel_dir, UPDATE_ADD, folder_name, NULL);
 	} else if (!S_ISDIR(st.st_mode)) {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-				     _("Cannot get folder `%s': not a directory."), folder_name);
+				     _("Cannot get folder '%s': not a directory."), folder_name);
 		g_free (name);
 		return NULL;
 	} else if (flags & CAMEL_STORE_FOLDER_EXCL) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Cannot create folder `%s': folder exists."), folder_name);
+				      _("Cannot create folder '%s': folder exists."), folder_name);
 		g_free (name);
 		return NULL;
 	}
@@ -270,7 +270,7 @@
 	name = g_strdup_printf("%s%s", CAMEL_LOCAL_STORE(store)->toplevel_dir, folder_name);
 	if (rmdir(name) == -1) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not delete folder `%s': %s"),
+				      _("Could not delete folder '%s': %s"),
 				      folder_name, g_strerror (errno));
 		g_free(name);
 		return;

Modified: branches/camel-db-summary/camel/providers/local/camel-spool-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-spool-store.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-spool-store.c	Tue May 27 08:03:02 2008
@@ -132,7 +132,7 @@
 
 	if (stat(service->url->path, &st) == -1) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-				      _("Spool `%s' cannot be opened: %s"),
+				      _("Spool '%s' cannot be opened: %s"),
 				      service->url->path, g_strerror (errno));
 		return;
 	}
@@ -144,7 +144,7 @@
 		((CamelSpoolStore *)service)->type = CAMEL_SPOOL_STORE_ELM;
 	else {
 		camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-				     _("Spool `%s' is not a regular file or directory"),
+				     _("Spool '%s' is not a regular file or directory"),
 				     service->url->path);
 		return;
 	}
@@ -163,7 +163,7 @@
 	if (((CamelSpoolStore *)store)->type == CAMEL_SPOOL_STORE_MBOX) {
 		if (strcmp(folder_name, "INBOX") != 0) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-					     _("Folder `%s/%s' does not exist."),
+					     _("Folder '%s/%s' does not exist."),
 					     ((CamelService *)store)->url->path, folder_name);
 		} else {
 			folder = camel_spool_folder_new(store, folder_name, flags, ex);
@@ -173,16 +173,16 @@
 		if (stat(name, &st) == -1) {
 			if (errno != ENOENT) {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-						      _("Could not open folder `%s':\n%s"),
+						      _("Could not open folder '%s':\n%s"),
 						      folder_name, g_strerror (errno));
 			} else if ((flags & CAMEL_STORE_FOLDER_CREATE) == 0) {
 				camel_exception_setv (ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-						      _("Folder `%s' does not exist."),
+						      _("Folder '%s' does not exist."),
 						      folder_name);
 			} else {
 				if (creat (name, 0600) == -1) {
 					camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-							      _("Could not create folder `%s':\n%s"),
+							      _("Could not create folder '%s':\n%s"),
 							      folder_name, g_strerror (errno));
 				} else {
 					folder = camel_spool_folder_new(store, folder_name, flags, ex);
@@ -190,7 +190,7 @@
 			}
 		} else if (!S_ISREG(st.st_mode)) {
 			camel_exception_setv(ex, CAMEL_EXCEPTION_STORE_NO_FOLDER,
-					     _("`%s' is not a mailbox file."), name);
+					     _("'%s' is not a mailbox file."), name);
 		} else {
 			folder = camel_spool_folder_new(store, folder_name, flags, ex);
 		}
@@ -328,7 +328,7 @@
 
 	if (stat(name, &st) == -1) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not scan folder `%s': %s"),
+				      _("Could not scan folder '%s': %s"),
 				      name, g_strerror (errno));
 	} else if (S_ISREG(st.st_mode)) {
 		/* incase we start scanning from a file.  messy duplication :-/ */
@@ -342,7 +342,7 @@
 	dir = opendir(name);
 	if (dir == NULL) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
-				      _("Could not scan folder `%s': %s"),
+				      _("Could not scan folder '%s': %s"),
 				      name, g_strerror (errno));
 		return -1;
 	}

Modified: branches/camel-db-summary/camel/providers/local/camel-spool-summary.c
==============================================================================
--- branches/camel-db-summary/camel/providers/local/camel-spool-summary.c	(original)
+++ branches/camel-db-summary/camel/providers/local/camel-spool-summary.c	Tue May 27 08:03:02 2008
@@ -236,7 +236,7 @@
 		if (size == -1) {
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
 					      _("Could not sync spool folder %s: %s\n"
-						"Folder may be corrupt, copy saved in `%s'"),
+						"Folder may be corrupt, copy saved in '%s'"),
 					      ((CamelLocalSummary *)cls)->folder_path,
 					      g_strerror (errno), tmpname);
 			/* so we dont delete it */
@@ -253,7 +253,7 @@
 	if (ftruncate(fd, outlen) == -1) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
 				      _("Could not sync spool folder %s: %s\n"
-					"Folder may be corrupt, copy saved in `%s'"),
+					"Folder may be corrupt, copy saved in '%s'"),
 				      ((CamelLocalSummary *)cls)->folder_path,
 				      g_strerror (errno), tmpname);
 		tmpname[0] = '\0';
@@ -264,7 +264,7 @@
 		g_warning("Cannot close source folder: %s", strerror (errno));
 		camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
 				      _("Could not sync spool folder %s: %s\n"
-					"Folder may be corrupt, copy saved in `%s'"),
+					"Folder may be corrupt, copy saved in '%s'"),
 				      ((CamelLocalSummary *)cls)->folder_path,
 				      g_strerror (errno), tmpname);
 		tmpname[0] = '\0';

Modified: branches/camel-db-summary/camel/providers/pop3/camel-pop3-store.c
==============================================================================
--- branches/camel-db-summary/camel/providers/pop3/camel-pop3-store.c	(original)
+++ branches/camel-db-summary/camel/providers/pop3/camel-pop3-store.c	Tue May 27 08:03:02 2008
@@ -416,7 +416,7 @@
 			break;
 		if (strncmp((char *) line, "-ERR", 4) == 0) {
 			camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_CANT_AUTHENTICATE,
-					      _("SASL `%s' Login failed for POP server %s: %s"),
+					      _("SASL '%s' Login failed for POP server %s: %s"),
 					      mech, CAMEL_SERVICE (store)->url->host, line);
 			goto done;
 		}
@@ -660,7 +660,7 @@
 {
 	if (g_ascii_strcasecmp (folder_name, "inbox") != 0) {
 		camel_exception_setv (ex, CAMEL_EXCEPTION_FOLDER_INVALID,
-				      _("No such folder `%s'."), folder_name);
+				      _("No such folder '%s'."), folder_name);
 		return NULL;
 	}
 	return camel_pop3_folder_new (store, ex);

Modified: branches/camel-db-summary/camel/tests/message/test4.c
==============================================================================
--- branches/camel-db-summary/camel/tests/message/test4.c	(original)
+++ branches/camel-db-summary/camel/tests/message/test4.c	Tue May 27 08:03:02 2008
@@ -104,7 +104,7 @@
 			continue;
 		}
 		
-		push ("testing message `%s`", filename);
+		push ("testing message '%s'", filename);
 		g_free (filename);
 		
 		stream = camel_stream_fs_new_with_fd (fd);

Modified: branches/camel-db-summary/camel/tests/mime-filter/test-tohtml.c
==============================================================================
--- branches/camel-db-summary/camel/tests/mime-filter/test-tohtml.c	(original)
+++ branches/camel-db-summary/camel/tests/mime-filter/test-tohtml.c	Tue May 27 08:03:02 2008
@@ -30,7 +30,7 @@
 	CamelStream *indisk, *outdisk, *filter;
 	int id;
 
-	camel_test_push("Data file `%s'", inname);
+	camel_test_push("Data file '%s'", inname);
 
 	camel_test_push("setup");
 

Modified: branches/camel-db-summary/configure.in
==============================================================================
--- branches/camel-db-summary/configure.in	(original)
+++ branches/camel-db-summary/configure.in	Tue May 27 08:03:02 2008
@@ -1445,7 +1445,7 @@
 AC_SUBST(E_DATA_SERVER_UI_CFLAGS)
 AC_SUBST(E_DATA_SERVER_UI_LIBS)
 
-E_BACKEND_DEPS="gobject-2.0 libxml-2.0"
+E_BACKEND_DEPS="gobject-2.0 libxml-2.0 gmodule-2.0"
 
 EVO_SET_COMPILE_FLAGS(E_BACKEND, $E_BACKEND_DEPS)
 AC_SUBST(E_BACKEND_CFLAGS)

Modified: branches/camel-db-summary/libebackend/Makefile.am
==============================================================================
--- branches/camel-db-summary/libebackend/Makefile.am	(original)
+++ branches/camel-db-summary/libebackend/Makefile.am	Tue May 27 08:03:02 2008
@@ -14,6 +14,7 @@
 	e-file-cache.c
 
 libebackend_1_2_la_LIBADD = 				\
+	$(top_builddir)/libedataserver/libedataserver-1.2.la \
 	$(E_BACKEND_LIBS)				\
 	$(DB_LIBS)
 

Modified: branches/camel-db-summary/libedataserverui/e-passwords.c
==============================================================================
--- branches/camel-db-summary/libedataserverui/e-passwords.c	(original)
+++ branches/camel-db-summary/libedataserverui/e-passwords.c	Tue May 27 08:03:02 2008
@@ -193,38 +193,50 @@
 }
 
 static EUri *
-ep_keyring_uri_new (const gchar *string)
+ep_keyring_uri_new (const gchar *string,
+                    GError **error)
 {
 	EUri *uri;
 
 	uri = e_uri_new (string);
-	if (uri == NULL)
-		return NULL;
+	g_return_val_if_fail (uri != NULL, NULL);
 
 	/* LDAP URIs do not have usernames, so use the URI as the username. */
 	if (uri->user == NULL && uri->protocol != NULL &&
 			(strcmp (uri->protocol, "ldap") == 0|| strcmp (uri->protocol, "google") == 0))
 		uri->user = g_strdelimit (g_strdup (string), "/=", '_');
 
+	/* Make sure the URI has the required components. */
+	if (uri->user == NULL && uri->host == NULL) {
+		g_set_error (
+			error, EP_KEYRING_ERROR,
+			GNOME_KEYRING_RESULT_BAD_ARGUMENTS,
+			_("Keyring key is unusable: no user or host name"));
+		e_uri_free (uri);
+		uri = NULL;
+	}
+
 	return uri;
 }
 
 static gboolean
 ep_keyring_validate (const gchar *user,
                      const gchar *server,
+                     const gchar *protocol,
                      GnomeKeyringAttributeList *attributes)
 {
 	const gchar *user_value = NULL;
 	const gchar *server_value = NULL;
+	const gchar *protocol_value = NULL;
 	gint ii;
 
 	g_return_val_if_fail (attributes != NULL, FALSE);
 
 	/* Is there anything to validate? */
-	if (user == NULL && server == NULL)
+	if (user == NULL && server == NULL && protocol == NULL)
 		return TRUE;
 
-	/* Look for "user" and "server" attributes. */
+	/* Look for "user", "server", and "protocol" attributes. */
 	for (ii = 0; ii < attributes->len; ii++) {
 		GnomeKeyringAttribute *attr;
 
@@ -235,6 +247,8 @@
 			user_value = attr->value.string;
 		else if (strcmp (attr->name, "server") == 0)
 			server_value = attr->value.string;
+		else if (strcmp (attr->name, "protocol") == 0)
+			protocol_value = attr->value.string;
 	}
 
 	/* Is there a "user" attribute? */
@@ -253,12 +267,21 @@
 	if (server != NULL && strcmp (server, server_value) != 0)
 		return FALSE;
 
+	/* Is there a "protocol" attribute? */
+	if (protocol != NULL && protocol_value == NULL)
+		return FALSE;
+
+	/* Does it match what we're looking for? */
+	if (protocol != NULL && strcmp (protocol, protocol_value) != 0)
+		return FALSE;
+
 	return TRUE;
 }
 
 static gboolean
 ep_keyring_delete_passwords (const gchar *user,
                              const gchar *server,
+                             const gchar *protocol,
                              GList *passwords,
                              GError **error)
 {
@@ -267,9 +290,14 @@
 		GnomeKeyringResult result;
 
 		/* Validate the item before deleting it. */
-		if (!ep_keyring_validate (user, server, found->attributes)) {
-			passwords = g_list_next (passwords);
-			continue;
+		if (!ep_keyring_validate (user, server, protocol, found->attributes)) {
+			/* XXX We didn't always store protocols in the
+			 *     keyring, so for backward-compatibility
+			 *     try validating by user and server only. */
+			if (!ep_keyring_validate (user, server, NULL, found->attributes)) {
+				passwords = g_list_next (passwords);
+				continue;
+			}
 		}
 
 		result = gnome_keyring_item_delete_sync (NULL, found->item_id);
@@ -291,6 +319,7 @@
 static gboolean
 ep_keyring_insert_password (const gchar *user,
                             const gchar *server,
+                            const gchar *protocol,
                             const gchar *display_name,
                             const gchar *password,
                             GError **error)
@@ -301,6 +330,7 @@
 
 	g_return_val_if_fail (user != NULL, FALSE);
 	g_return_val_if_fail (server != NULL, FALSE);
+	g_return_val_if_fail (protocol != NULL, FALSE);
 	g_return_val_if_fail (display_name != NULL, FALSE);
 	g_return_val_if_fail (password != NULL, FALSE);
 
@@ -311,6 +341,8 @@
 		attributes, "user", user);
 	gnome_keyring_attribute_list_append_string (
 		attributes, "server", server);
+	gnome_keyring_attribute_list_append_string (
+		attributes, "protocol", protocol);
 
 	/* XXX We don't use item_id but gnome-keyring doesn't allow
 	 *     for a NULL pointer.  In fact it doesn't even check! */
@@ -333,6 +365,7 @@
 static GList *
 ep_keyring_lookup_passwords (const gchar *user,
                              const gchar *server,
+                             const gchar *protocol,
                              GError **error)
 {
 	GnomeKeyringAttributeList *attributes;
@@ -348,6 +381,9 @@
 	if (server != NULL)
 		gnome_keyring_attribute_list_append_string (
 			attributes, "server", server);
+	if (protocol != NULL)
+		gnome_keyring_attribute_list_append_string (
+			attributes, "protocol", protocol);
 
 	result = gnome_keyring_find_items_sync (
 		GNOME_KEYRING_ITEM_NETWORK_PASSWORD, attributes, &passwords);
@@ -479,9 +515,9 @@
 	GError *error = NULL;
 
 	/* Find all Evolution passwords and delete them. */
-	passwords = ep_keyring_lookup_passwords (NULL, NULL, &error);
+	passwords = ep_keyring_lookup_passwords (NULL, NULL, NULL, &error);
 	if (passwords != NULL) {
-		ep_keyring_delete_passwords (NULL, NULL, passwords, &error);
+		ep_keyring_delete_passwords (NULL, NULL, NULL, passwords, &error);
 		gnome_keyring_found_list_free (passwords);
 	}
 
@@ -509,9 +545,9 @@
 
 	/* Not finding the requested group is acceptable, but we still
 	 * want to leave an informational message on the terminal. */
-        else if (g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND)) {
-                g_message ("%s", error->message);
-                g_error_free (error);
+	else if (g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND)) {
+		g_message ("%s", error->message);
+		g_error_free (error);
 
 	} else if (error != NULL)
 		g_propagate_error (&msg->error, error);
@@ -543,9 +579,9 @@
 	GError *error = NULL;
 
 	/* Find all Evolution passwords and delete them. */
-	passwords = ep_keyring_lookup_passwords (NULL, NULL, &error);
+	passwords = ep_keyring_lookup_passwords (NULL, NULL, NULL, &error);
 	if (passwords != NULL) {
-		ep_keyring_delete_passwords (NULL, NULL, passwords, &error);
+		ep_keyring_delete_passwords (NULL, NULL, NULL, passwords, &error);
 		gnome_keyring_found_list_free (passwords);
 
 	}
@@ -618,12 +654,13 @@
 		return;
 	}
 
-	uri = ep_keyring_uri_new (msg->key);
-	g_return_if_fail (uri != NULL);
+	uri = ep_keyring_uri_new (msg->key, &msg->error);
+	if (uri == NULL)
+		return;
 
 	/* Only remove the password from the session hash
 	 * if the keyring insertion was successful. */
-	if (ep_keyring_insert_password (uri->user, uri->host, msg->key, password, &error))
+	if (ep_keyring_insert_password (uri->user, uri->host, uri->protocol, msg->key, password, &error))
 		g_hash_table_remove (password_cache, msg->key);
 
 	if (error != NULL)
@@ -681,13 +718,21 @@
 	EUri *uri;
 	GError *error = NULL;
 
-	uri = ep_keyring_uri_new (msg->key);
-	g_return_if_fail (uri != NULL);
+	uri = ep_keyring_uri_new (msg->key, &msg->error);
+	if (uri == NULL)
+		return;
 
-	/* Find all Evolution passwords matching the URI and delete them. */
-	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, &error);
+	/* Find all Evolution passwords matching the URI and delete them.
+	 *
+	 * XXX We didn't always store protocols in the keyring, so for
+	 *     backward-compatibility we need to lookup passwords by user
+	 *     and host only (no protocol).  But we do send the protocol
+	 *     to ep_keyring_delete_passwords(), which also knows about
+	 *     the backward-compatibility issue and will filter the list
+	 *     appropriately. */
+	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, NULL, &error);
 	if (passwords != NULL) {
-		ep_keyring_delete_passwords (uri->user, uri->host, passwords, &error);
+		ep_keyring_delete_passwords (uri->user, uri->host, uri->protocol, passwords, &error);
 		gnome_keyring_found_list_free (passwords);
 	}
 
@@ -716,10 +761,10 @@
 		g_message ("%s", error->message);
 		g_error_free (error);
 
-        /* Not finding the requested group is also acceptable. */
-        } else if (g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND)) {
-                g_message ("%s", error->message);
-                g_error_free (error);
+	/* Not finding the requested group is also acceptable. */
+	} else if (g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND)) {
+		g_message ("%s", error->message);
+		g_error_free (error);
 
 	} else if (error != NULL)
 		g_propagate_error (&msg->error, error);
@@ -754,18 +799,48 @@
 	EUri *uri;
 	GError *error = NULL;
 
-	uri = ep_keyring_uri_new (msg->key);
-	g_return_if_fail (uri != NULL);
+	uri = ep_keyring_uri_new (msg->key, &msg->error);
+	if (uri == NULL)
+		return;
 
 	/* Find the first Evolution password that matches the URI. */
-	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, &error);
+	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, uri->protocol, &error);
+	if (passwords != NULL) {
+		GList *iter = passwords;
+
+		while (iter != NULL) {
+			GnomeKeyringFound *found = iter->data;
+
+			if (ep_keyring_validate (uri->user, uri->host, uri->protocol, found->attributes)) {
+				msg->password = g_strdup (found->secret);
+				break;
+			}
+
+			iter = g_list_next (iter);
+		}
+
+		gnome_keyring_found_list_free (passwords);
+	}
+
+	if (msg->password != NULL)
+		goto done;
+
+	/* Clear the previous error, if there was one.  If the error was
+	 * something other than NO_MATCH then it's likely to occur again. */
+	if (error != NULL)
+		g_clear_error (&error);
+
+	/* XXX We didn't always store protocols in the keyring, so for
+	 *     backward-compatibility we also need to lookup passwords
+	 *     by user and host only (no protocol). */
+	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, NULL, &error);
 	if (passwords != NULL) {
 		GList *iter = passwords;
 
 		while (iter != NULL) {
 			GnomeKeyringFound *found = iter->data;
 
-			if (ep_keyring_validate (uri->user, uri->host, found->attributes)) {
+			if (ep_keyring_validate (uri->user, uri->host, NULL, found->attributes)) {
 				msg->password = g_strdup (found->secret);
 				break;
 			}
@@ -776,6 +851,7 @@
 		gnome_keyring_found_list_free (passwords);
 	}
 
+done:
 	/* Not finding the requested key is acceptable, but we still
 	 * want to leave an informational message on the terminal. */
 	if (g_error_matches (error, EP_KEYRING_ERROR, GNOME_KEYRING_RESULT_NO_MATCH)) {
@@ -809,10 +885,10 @@
 		g_message ("%s", error->message);
 		g_error_free (error);
 
-        /* Not finding the requested group is also acceptable. */
-        } else if (g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND)) {
-                g_message ("%s", error->message);
-                g_error_free (error);
+	/* Not finding the requested group is also acceptable. */
+	} else if (g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND)) {
+		g_message ("%s", error->message);
+		g_error_free (error);
 
 	} else if (error != NULL)
 		g_propagate_error (&msg->error, error);
@@ -992,13 +1068,13 @@
 	gtk_dialog_set_has_separator (GTK_DIALOG (widget), FALSE);
 	gtk_dialog_set_default_response (
 		GTK_DIALOG (widget), GTK_RESPONSE_OK);
-        gtk_window_set_resizable (GTK_WINDOW (widget), FALSE);
+	gtk_window_set_resizable (GTK_WINDOW (widget), FALSE);
 	gtk_window_set_transient_for (GTK_WINDOW (widget), msg->parent);
 	gtk_window_set_position (GTK_WINDOW (widget), GTK_WIN_POS_CENTER_ON_PARENT);
 	gtk_container_set_border_width (GTK_CONTAINER (widget), 12);
 	password_dialog = GTK_DIALOG (widget);
 
-        /* Override GtkDialog defaults */
+	/* Override GtkDialog defaults */
 	widget = password_dialog->vbox;
 	gtk_box_set_spacing (GTK_BOX (widget), 12);
 	gtk_container_set_border_width (GTK_CONTAINER (widget), 0);
@@ -1031,7 +1107,7 @@
 	/* Password Label */
 	widget = gtk_label_new (NULL);
 	gtk_label_set_line_wrap (GTK_LABEL (widget), TRUE);
-        gtk_label_set_markup (GTK_LABEL (widget), msg->prompt);
+	gtk_label_set_markup (GTK_LABEL (widget), msg->prompt);
 	gtk_misc_set_alignment (GTK_MISC (widget), 0.0, 0.5);
 	gtk_widget_show (widget);
 

Modified: branches/camel-db-summary/servers/exchange/lib/e2k-context.c
==============================================================================
--- branches/camel-db-summary/servers/exchange/lib/e2k-context.c	(original)
+++ branches/camel-db-summary/servers/exchange/lib/e2k-context.c	Tue May 27 08:03:02 2008
@@ -2255,6 +2255,8 @@
 	g_return_val_if_fail (source_hrefs != NULL, NULL);
 
 	dest_uri = e2k_strdup_with_trailing_slash (dest_folder);
+	if (!dest_uri)
+		return NULL;
 	hrefs = (const char **)source_hrefs->pdata;
 
 	msgs = g_new0 (GSList *, 1);

Modified: branches/camel-db-summary/servers/exchange/lib/e2k-properties.c
==============================================================================
--- branches/camel-db-summary/servers/exchange/lib/e2k-properties.c	(original)
+++ branches/camel-db-summary/servers/exchange/lib/e2k-properties.c	Tue May 27 08:03:02 2008
@@ -45,6 +45,7 @@
 } E2kPropInfo;
 
 static GHashTable *known_properties;
+static GStaticMutex known_properties_lock = G_STATIC_MUTEX_INIT;
 
 /**
  * e2k_properties_new:
@@ -73,7 +74,10 @@
 	gpointer value_copy;
 	E2kPropInfo *pi;
 
+	g_static_mutex_lock (&known_properties_lock);
 	pi = g_hash_table_lookup (known_properties, name);
+	g_static_mutex_unlock (&known_properties_lock);
+
 	switch (pi->type) {
 	case E2K_PROP_TYPE_BINARY_ARRAY:
 	{
@@ -198,7 +202,9 @@
 {
 	E2kPropInfo *pi;
 
+	g_static_mutex_lock (&known_properties_lock);
 	pi = g_hash_table_lookup (known_properties, key);
+	g_static_mutex_unlock (&known_properties_lock);
 	if (pi)
 		free_prop (pi, value);
 }
@@ -264,6 +270,7 @@
 {
 	E2kPropInfo *pi;
 
+	g_static_mutex_lock (&known_properties_lock);
 	if (!known_properties)
 		known_properties = g_hash_table_new (g_str_hash, g_str_equal);
 
@@ -271,6 +278,7 @@
 	if (pi) {
 		if (pi->type == E2K_PROP_TYPE_UNKNOWN)
 			pi->type = type;
+		g_static_mutex_unlock (&known_properties_lock);
 		return pi;
 	}
 
@@ -287,6 +295,8 @@
 
 	g_hash_table_insert (known_properties, pi->name, pi);
 
+	g_static_mutex_unlock (&known_properties_lock);
+
 	return pi;
 }
 
@@ -487,7 +497,9 @@
 	struct foreach_data *fd = data;
 	E2kPropInfo *pi;
 
+	g_static_mutex_lock (&known_properties_lock);
 	pi = g_hash_table_lookup (known_properties, key);
+	g_static_mutex_unlock (&known_properties_lock);
 	if (pi)
 		fd->callback (pi->name, pi->type, value, fd->user_data);
 }
@@ -556,7 +568,9 @@
 	E2kPropInfo *pi;
 	const char *name;
 
+	g_static_mutex_lock (&known_properties_lock);
 	pi = g_hash_table_lookup (known_properties, key);
+	g_static_mutex_unlock (&known_properties_lock);
 	if (!pi)
 		return;
 
@@ -627,7 +641,7 @@
 
 static GHashTable *namespaces;
 static int next_namespace = 'a';
-
+static GStaticMutex namespaces_lock = G_STATIC_MUTEX_INIT;
 
 static const char *
 get_div (const char *propname)
@@ -683,15 +697,19 @@
 	gpointer key, value;
 	char *name;
 
+	g_static_mutex_lock (&namespaces_lock);
 	if (!namespaces)
 		setup_namespaces ();
 
-	if (g_hash_table_lookup_extended (namespaces, prop, &key, &value))
+	if (g_hash_table_lookup_extended (namespaces, prop, &key, &value)) {
+		g_static_mutex_unlock (&namespaces_lock);
 		return key;
+	}
 
 	name = g_strndup (prop, div - prop + 1);
 	g_hash_table_insert (namespaces, name, GINT_TO_POINTER (next_namespace));
 	next_namespace++;
+	g_static_mutex_unlock (&namespaces_lock);
 	return name;
 }
 
@@ -709,17 +727,23 @@
 {
 	const char *div = get_div (prop);
 	gpointer key, value;
-	char *name;
+	char *name, res;
 
+	g_static_mutex_lock (&namespaces_lock);
 	if (!namespaces)
 		setup_namespaces ();
 
-	if (g_hash_table_lookup_extended (namespaces, prop, &key, &value))
+	if (g_hash_table_lookup_extended (namespaces, prop, &key, &value)) {
+		g_static_mutex_unlock (&namespaces_lock);
 		return GPOINTER_TO_INT (value);
+	}
 
 	name = g_strndup (prop, div - prop + 1);
 	g_hash_table_insert (namespaces, name, GINT_TO_POINTER (next_namespace));
-	return next_namespace++;
+	res = next_namespace++;
+	g_static_mutex_unlock (&namespaces_lock);
+
+	return res;
 }
 
 /**

Modified: branches/camel-db-summary/servers/exchange/lib/e2k-utils.c
==============================================================================
--- branches/camel-db-summary/servers/exchange/lib/e2k-utils.c	(original)
+++ branches/camel-db-summary/servers/exchange/lib/e2k-utils.c	Tue May 27 08:03:02 2008
@@ -273,6 +273,9 @@
 {
 	char *p;
 
+	if (!path || !*path)
+		return NULL;
+
 	p = strrchr (path, '/');
 	if (p && !p[1])
 		return g_strdup (path);

Modified: branches/camel-db-summary/servers/groupwise/e-gw-connection.c
==============================================================================
--- branches/camel-db-summary/servers/groupwise/e-gw-connection.c	(original)
+++ branches/camel-db-summary/servers/groupwise/e-gw-connection.c	Tue May 27 08:03:02 2008
@@ -444,16 +444,18 @@
 	priv->book_list = NULL;
 	priv->opts = NULL;
 
-	if (g_getenv ("GROUPWISE_DEBUG")) {
+	/* README: We do not use libsoup logger and use our own as we need formatted output etc. */
+	/*
+	   if (g_getenv ("GROUPWISE_DEBUG")) {
 		if (atoi (g_getenv ("GROUPWISE_DEBUG")) == 1) {
 			SoupLogger *logger;
 
-			logger = soup_logger_new (SOUP_LOGGER_LOG_BODY,
-						  SOUP_LOGGER_LOG_BODY);
+			logger = soup_logger_new (SOUP_LOGGER_LOG_BODY, -1);
 			soup_logger_attach (logger, priv->soup_session);
 			g_object_unref (logger);
 		}
 	}
+	*/
 }
 
 GType
@@ -675,6 +677,15 @@
 
 	/* process response */
 	response = soup_soap_message_parse_response (msg);
+	
+	if (g_getenv ("GROUPWISE_DEBUG")) {
+
+		/* README: The stdout can be replaced with Evolution's
+		Logging framework also */
+
+		soup_soap_response_dump_response (response, stdout);
+		g_print ("\n------\n");
+	}
 
 	return response;
 }

Modified: branches/camel-db-summary/servers/groupwise/soup-soap-response.c
==============================================================================
--- branches/camel-db-summary/servers/groupwise/soup-soap-response.c	(original)
+++ branches/camel-db-summary/servers/groupwise/soup-soap-response.c	Tue May 27 08:03:02 2008
@@ -562,3 +562,19 @@
 		node = node->next;
 	return node;
 }
+
+
+int
+soup_soap_response_dump_response (SoupSoapResponse *response, FILE *buffer)
+{
+	xmlChar *xmlbuff;
+	int buffersize, ret;
+
+	SoupSoapResponsePrivate *priv = SOUP_SOAP_RESPONSE_GET_PRIVATE (response);
+	xmlDocDumpFormatMemory(priv->xmldoc, &xmlbuff, &buffersize, 1);
+	
+	ret = fputs ((char *) xmlbuff, buffer);
+	xmlFree (xmlbuff);
+
+	return ret;
+}

Modified: branches/camel-db-summary/servers/groupwise/soup-soap-response.h
==============================================================================
--- branches/camel-db-summary/servers/groupwise/soup-soap-response.h	(original)
+++ branches/camel-db-summary/servers/groupwise/soup-soap-response.h	Tue May 27 08:03:02 2008
@@ -61,6 +61,9 @@
 								  SoupSoapParameter *from,
 								  const char *name);
 
+int soup_soap_response_dump_response (SoupSoapResponse *response, FILE *buffer);
+
+
 G_END_DECLS
 
 #endif



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