aboutsummaryrefslogtreecommitdiff
path: root/src/imap.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-05-24 11:53:18 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-05-24 11:53:18 +0000
commit12b8032609331b41a77ab7a4a0cbcc3238c86d77 (patch)
tree193d51f0124c87cab74e7d4611887fe9b32c852e /src/imap.c
parentc420ff69aa97960e37e13b8fb36c0cd5a8d4cbbb (diff)
optimized writing summary cache.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@285 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/imap.c')
-rw-r--r--src/imap.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/imap.c b/src/imap.c
index 5dfb806d..dec32a70 100644
--- a/src/imap.c
+++ b/src/imap.c
@@ -888,6 +888,7 @@ static GSList *imap_get_msg_list(Folder *folder, FolderItem *item,
item->total--;
mlist = g_slist_remove(mlist, msginfo);
procmsg_msginfo_free(msginfo);
+ item->cache_dirty = TRUE;
continue;
}
@@ -960,12 +961,15 @@ static GSList *imap_get_msg_list(Folder *folder, FolderItem *item,
newlist = imap_get_uncached_messages(session, item,
begin, last_uid,
TRUE);
+ if (newlist)
+ item->cache_dirty = TRUE;
mlist = g_slist_concat(mlist, newlist);
}
} else {
imap_delete_all_cached_messages(item);
mlist = imap_get_uncached_messages(session, item, 0, 0, TRUE);
last_uid = procmsg_get_last_num_in_msg_list(mlist);
+ item->cache_dirty = TRUE;
}
item->mtime = uid_validity;
@@ -974,6 +978,8 @@ static GSList *imap_get_msg_list(Folder *folder, FolderItem *item,
item->last_num = last_uid;
+ debug_print("cache_dirty: %d\n", item->cache_dirty);
+
catch:
return mlist;
}