[evolution-data-server] Bug #690433 - Do not refresh folder on every message transfer



commit 0a339a2c4578e14761816bdc16b88936500c7c51
Author: Milan Crha <mcrha redhat com>
Date:   Tue Mar 12 17:03:34 2013 +0100

    Bug #690433 - Do not refresh folder on every message transfer

 camel/camel-filter-driver.c |    7 ++++---
 camel/camel-imapx-folder.c  |    6 +++++-
 2 files changed, 9 insertions(+), 4 deletions(-)
---
diff --git a/camel/camel-filter-driver.c b/camel/camel-filter-driver.c
index 02c01a0..f7ab76d 100644
--- a/camel/camel-filter-driver.c
+++ b/camel/camel-filter-driver.c
@@ -1156,9 +1156,10 @@ close_folder (gpointer key,
 
        if (folder != FOLDER_INVALID) {
                /* FIXME Pass a GCancellable */
-               camel_folder_synchronize_sync (
-                       folder, FALSE, NULL,
-                       (driver->priv->error != NULL) ? NULL : &driver->priv->error);
+               if (camel_folder_synchronize_sync (folder, FALSE, NULL,
+                       (driver->priv->error != NULL) ? NULL : &driver->priv->error))
+                       camel_folder_refresh_info_sync (folder, NULL,
+                               (driver->priv->error != NULL) ? NULL : &driver->priv->error);
                camel_folder_thaw (folder);
                g_object_unref (folder);
        }
diff --git a/camel/camel-imapx-folder.c b/camel/camel-imapx-folder.c
index 4b8cafb..7785b6a 100644
--- a/camel/camel-imapx-folder.c
+++ b/camel/camel-imapx-folder.c
@@ -1043,7 +1043,11 @@ imapx_transfer_messages_to_sync (CamelFolder *source,
                g_object_unref (server);
        }
 
-       imapx_refresh_info_sync (dest, cancellable, NULL);
+       /* update destination folder only if not frozen, to not update
+          for each single message transfer during filtering
+        */
+       if (!camel_folder_is_frozen (dest))
+               imapx_refresh_info_sync (dest, cancellable, NULL);
 
        return success;
 }


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