[evolution-patches] local folder startup change



This makes a similar change to one made in imap.

Basically opening a folder becomes simple and fast, and only once you
visit the folder or refresh_info() gets called or when it needs to, does
it do any work.

It may affect seeing new mail at startup for things like maildir, but
get/recv should fix that.

This means if your 1gb indexed mailbox needs indexing, you don't get
nothing for 1/2 an hour while it runs, the application starts and just
runs slowly for a while.

-- 
adfa(evolution-2.4:20087): gtkhtml-WARNING **: cannot find icon:
'stock_insert-url' in gnome 
Index: camel/providers/local/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/providers/local/ChangeLog,v
retrieving revision 1.10
diff -u -p -r1.10 ChangeLog
--- camel/providers/local/ChangeLog	9 Aug 2005 05:42:52 -0000	1.10
+++ camel/providers/local/ChangeLog	12 Aug 2005 09:28:51 -0000
@@ -1,3 +1,8 @@
+2005-08-12  Not Zed  <NotZed Ximian com>
+
+	* camel-local-folder.c (camel_local_folder_construct): dont sync
+	folder on open, wait for a refresh_info to do it.
+
 2005-04-17  Changwoo Ryu  <cwryu debian org>
 
 	** See bug #300891
Index: camel/providers/local/camel-local-folder.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/providers/local/camel-local-folder.c,v
retrieving revision 1.55
diff -u -p -r1.55 camel-local-folder.c
--- camel/providers/local/camel-local-folder.c	25 Feb 2005 03:41:55 -0000	1.55
+++ camel/providers/local/camel-local-folder.c	12 Aug 2005 09:28:51 -0000
@@ -290,13 +290,16 @@ camel_local_folder_construct(CamelLocalF
 	if (camel_local_summary_load((CamelLocalSummary *)folder->summary, forceindex, NULL) == -1) {
 		/* ? */
 	}
-	
+
+	/* We don't need to sync here ..., it can sync later on when it calls refresh info */
+#if 0
 	/*if (camel_local_summary_check((CamelLocalSummary *)folder->summary, lf->changes, ex) == -1) {*/
 	/* we sync here so that any hard work setting up the folder isn't lost */
-	if (camel_local_summary_sync((CamelLocalSummary *)folder->summary, FALSE, lf->changes, ex) == -1) {
+	/*if (camel_local_summary_sync((CamelLocalSummary *)folder->summary, FALSE, lf->changes, ex) == -1) {
 		camel_object_unref (CAMEL_OBJECT (folder));
 		return NULL;
-	}
+		}*/
+#endif
 
 	/* TODO: This probably shouldn't be here? */
 	if ((flags & CAMEL_STORE_FOLDER_CREATE) != 0) {


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