evolution-data-server r9376 - in trunk/camel: . providers/local
- From: sragavan svn gnome org
- To: svn-commits-list gnome org
- Subject: evolution-data-server r9376 - in trunk/camel: . providers/local
- Date: Mon, 18 Aug 2008 10:10:55 +0000 (UTC)
Author: sragavan
Date: Mon Aug 18 10:10:54 2008
New Revision: 9376
URL: http://svn.gnome.org/viewvc/evolution-data-server?rev=9376&view=rev
Log:
* camel/providers/local/camel-mbox-summary.c: Continue, if the summary
isn't loaded.
(use "git reset HEAD <file>..." to unstage)
Modified:
trunk/camel/ChangeLog
trunk/camel/providers/local/camel-mbox-summary.c
Modified: trunk/camel/providers/local/camel-mbox-summary.c
==============================================================================
--- trunk/camel/providers/local/camel-mbox-summary.c (original)
+++ trunk/camel/providers/local/camel-mbox-summary.c Mon Aug 18 10:10:54 2008
@@ -509,6 +509,7 @@
int ok = 0;
struct stat st;
off_t size = 0;
+ GSList *del = NULL;
d(printf("Calling summary update, from pos %d\n", (int)offset));
@@ -587,12 +588,19 @@
d(printf("uid '%s' vanished, removing", camel_message_info_uid(mi)));
if (changeinfo)
camel_folder_change_info_remove_uid(changeinfo, camel_message_info_uid(mi));
- camel_folder_summary_remove(s, (CamelMessageInfo *)mi);
+ del = g_slist_prepend(del, (gpointer) camel_pstring_strdup(camel_message_info_uid(mi)));
+ camel_folder_summary_remove_index_fast (s, i);
count--;
i--;
}
camel_message_info_free(mi);
}
+
+ /* Delete all in one transaction */
+ camel_db_delete_uids (s->folder->cdb, s->folder->full_name, del, ex);
+ g_slist_foreach (del, (GFunc) camel_pstring_free, NULL);
+ g_slist_free (del);
+
mbs->changes = NULL;
/* update the file size/mtime in the summary */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]