From 5d1f2234a63d8e9fccfe184f411c51df09a45439 Mon Sep 17 00:00:00 2001 From: Fabian Keil Date: Sat, 2 May 2009 20:51:45 +0200 Subject: [PATCH 1/2] Style fix. --- src/folder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git src/folder.c src/folder.c index 7a434b6..6957150 100644 --- src/folder.c +++ src/folder.c @@ -2037,7 +2037,7 @@ gint folder_item_scan_full(FolderItem *item, gboolean filtering) return(-1); } - if(prefs_common.thread_by_subject) { + if (prefs_common.thread_by_subject) { subject_table = g_hash_table_new(g_str_hash, g_str_equal); } -- 1.6.1.3 From 1af562f4d329713d8d41718b1da66fd33095b63b Mon Sep 17 00:00:00 2001 From: Fabian Keil Date: Sat, 2 May 2009 20:53:20 +0200 Subject: [PATCH 2/2] If the cache contains phantom messages, regenerate it. --- src/folder.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git src/folder.c src/folder.c index 6957150..010e7d9 100644 --- src/folder.c +++ src/folder.c @@ -2046,6 +2046,7 @@ gint folder_item_scan_full(FolderItem *item, gboolean filtering) folder_item_read_cache(item); cache_list = msgcache_get_msg_list(item->cache); } else { + regenerate_cache: if (item->cache) msgcache_destroy(item->cache); item->cache = msgcache_new(); @@ -2063,6 +2064,10 @@ gint folder_item_scan_full(FolderItem *item, gboolean filtering) GSList *cache_list_last; cache_cur_num = ((MsgInfo *)cache_list_cur->data)->msgnum; + if (cache_cur_num == 0) { + printf("Phantom message in cache. Regenerating.\n"); + goto regenerate_cache; + } cache_list_last = g_slist_last(cache_list); cache_max_num = ((MsgInfo *)cache_list_last->data)->msgnum; } else { -- 1.6.1.3