[evolution-data-server/imap-pop-mobile: 10/11] Fix a bug where mobile mode downloads all mails.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server/imap-pop-mobile: 10/11] Fix a bug where mobile mode downloads all mails.
- Date: Thu, 26 Jan 2012 13:49:15 +0000 (UTC)
commit 812230fd39eb54048a71e70d6f8cd9ade553149d
Author: Srinivasa Ragavan <sragavan gnome org>
Date: Thu Jan 26 11:27:50 2012 +0530
Fix a bug where mobile mode downloads all mails.
camel/providers/imapx/camel-imapx-server.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/camel/providers/imapx/camel-imapx-server.c b/camel/providers/imapx/camel-imapx-server.c
index 351b117..91cb230 100644
--- a/camel/providers/imapx/camel-imapx-server.c
+++ b/camel/providers/imapx/camel-imapx-server.c
@@ -3995,6 +3995,7 @@ imapx_command_step_fetch_done (CamelIMAPXServer *is,
mobile_mode = camel_imapx_settings_get_mobile_mode (
CAMEL_IMAPX_SETTINGS (settings));
+ //printf("%s: Mobile mode: %d Fetch Count %d\n", camel_folder_get_display_name (job->folder), mobile_mode, batch_count);
if (ic->error != NULL || ic->status->result != IMAPX_OK) {
propagate_ic_error (job, ic, "Error fetching message headers");
goto cleanup;
@@ -4020,11 +4021,13 @@ imapx_command_step_fetch_done (CamelIMAPXServer *is,
ic->complete = imapx_command_step_fetch_done;
ic->job = job;
ic->pri = job->pri - 1;
+ //printf("Total: %d: %d, %d, %d\n", total, fetch_limit, i, job->u.refresh_info.last_index);
job->u.refresh_info.last_index = i;
/* If its mobile client and when total=0 (new account setup) fetch only one batch of mails,
* on futher attempts download all new mails as per the limit. */
- for (; i < infos->len && (!mobile_mode || total || ((fetch_limit != -1 && i < fetch_limit) || (fetch_limit == -1 && i < batch_count))); i++) {
+ //printf("Total: %d: %d\n", total, fetch_limit);
+ for (; i < infos->len && (!mobile_mode || (total && i == 0) || ((fetch_limit != -1 && i < fetch_limit) || (fetch_limit == -1 && i < batch_count))); i++) {
gint res;
struct _refresh_info *r = &g_array_index (infos, struct _refresh_info, i);
@@ -4039,7 +4042,7 @@ imapx_command_step_fetch_done (CamelIMAPXServer *is,
}
}
- e('S', "Existing : %d Gonna fetch in %s for %d/%d\n", total, camel_folder_get_full_name(job->folder), i, infos->len);
+ //printf("Existing : %d Gonna fetch in %s for %d/%d\n", total, camel_folder_get_full_name(job->folder), i, infos->len);
job->u.refresh_info.index = infos->len;
if (imapx_uidset_done (&job->u.refresh_info.uidset, ic)) {
@@ -4401,6 +4404,7 @@ imapx_job_fetch_new_messages_start (CamelIMAPXServer *is,
_("Fetching summary information for new messages in %s"),
camel_folder_get_display_name (folder));
+ //printf("Fetch order: %d/%d\n", fetch_order, CAMEL_SORT_DESCENDING);
if (diff > uidset_size || fetch_order == CAMEL_SORT_DESCENDING) {
ic = imapx_command_new (
is, "FETCH", job->folder, job->cancellable,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]