Use camel_folder_sync_message() to sync messages.
authorDavid Woodhouse <David.Woodhouse@intel.com>
Wed, 23 Jun 2010 13:38:41 +0000 (14:38 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Wed, 23 Jun 2010 22:42:45 +0000 (23:42 +0100)
The imapx back end will handle sync_message requests at a much lower
priority than normal get_message requests, as is right and proper.

It would help if the front end would call the correct method, so that
the prioritisation actually works as expected. Otherwise, sync_message
requests end up having higher priority than the requests which are updating
flags and headers for changed folders -- leading to a crappy user experience.

camel/camel-offline-folder.c

index c08a25b..c847ad7 100644 (file)
@@ -70,8 +70,7 @@ offline_downsync_sync (CamelSession *session, CamelSessionThreadMsg *mm)
                        gint pc = i * 100 / m->changes->uid_added->len;
 
                        camel_operation_progress (NULL, pc);
-                       if ((message = camel_folder_get_message (m->folder, m->changes->uid_added->pdata[i], &mm->ex)))
-                               g_object_unref (message);
+                       camel_folder_sync_message (m->folder, m->changes->uid_added->pdata[i], &mm->ex);
                }
        } else {
                camel_offline_folder_downsync ((CamelOfflineFolder *) m->folder, "(match-all)", &mm->ex);