[evolution-data-server] Bug 676506 - imapx: After QRESYNC leaves us out of sync, a "full resync" doesn't work either.



commit e689ff03dfa4d23722d14bdfd93103a91e4cd7e5
Author: David Woodhouse <David Woodhouse intel com>
Date:   Mon May 21 16:22:36 2012 +0100

    Bug 676506 - imapx: After QRESYNC leaves us out of sync, a "full resync" doesn't work either.
    
    Always fetch from the beginning of the folder.

 camel/camel-imapx-server.c |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)
---
diff --git a/camel/camel-imapx-server.c b/camel/camel-imapx-server.c
index a527aae..3556e62 100644
--- a/camel/camel-imapx-server.c
+++ b/camel/camel-imapx-server.c
@@ -4023,7 +4023,18 @@ imapx_job_scan_changes_start (CamelIMAPXJob *job,
 {
 	CamelIMAPXCommand *ic;
 	RefreshInfoData *data;
-	gchar *uid = imapx_get_uid_from_index (job->folder->summary, 0);
+	CamelService *service;
+	CamelSettings *settings;
+	gboolean mobile_mode;
+	gchar *uid = NULL;
+
+	service = CAMEL_SERVICE (is->store);
+	settings = camel_service_get_settings (service);
+	mobile_mode = camel_imapx_settings_get_mobile_mode (
+		CAMEL_IMAPX_SETTINGS (settings));
+
+	if (mobile_mode)
+		uid = imapx_get_uid_from_index (job->folder->summary, 0);
 
 	data = camel_imapx_job_get_data (job);
 	g_return_if_fail (data != NULL);
@@ -4035,7 +4046,9 @@ imapx_job_scan_changes_start (CamelIMAPXJob *job,
 		_("Scanning for changed messages in %s"),
 		camel_folder_get_display_name (job->folder));
 
-	e('E', "Scanning from %s in %s\n", uid, camel_folder_get_full_name (job->folder));	
+	e('E', "Scanning from %s in %s\n", uid ? uid : "start",
+	  camel_folder_get_full_name (job->folder));
+
 	ic = camel_imapx_command_new (
 		is, "FETCH", job->folder,
 		"UID FETCH %s:* (UID FLAGS)", uid ? uid : "1");



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