diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | ChangeLog.ja | 8 | ||||
-rw-r--r-- | libsylph/imap.c | 4 | ||||
-rw-r--r-- | libsylph/mh.c | 4 | ||||
-rw-r--r-- | src/inc.c | 7 |
5 files changed, 27 insertions, 3 deletions
@@ -1,5 +1,12 @@ 2007-03-25 + * libsylph/imap.c + libsylph/mh.c: fixed get_msg_list() with uncached_only flag. + * src/inc.c: inc_remote_account_mail(): fixed a bug that messages which + were not filtered were not counted as new messages. + +2007-03-25 + * src/main.c: app_init(): win32: disabled LANGUAGE (fixes incorrect language selection). diff --git a/ChangeLog.ja b/ChangeLog.ja index a91b77c8..3c7264aa 100644 --- a/ChangeLog.ja +++ b/ChangeLog.ja @@ -1,3 +1,11 @@ +2007-03-25
+
+ * libsylph/imap.c
+ libsylph/mh.c: get_msg_list() で uncached_only フラグが付いた場合を
+ 修正。
+ * src/inc.c: inc_remote_account_mail(): フィルタされなかったメッセージ
+ が新着メッセージとカウントされなかったバグを修正。
+ 2007-03-25 * src/main.c: app_init(): win32: LANGUAGE を無効にした(言語選択を diff --git a/libsylph/imap.c b/libsylph/imap.c index f3856ce1..caff7255 100644 --- a/libsylph/imap.c +++ b/libsylph/imap.c @@ -1067,7 +1067,9 @@ static GSList *imap_get_msg_list_full(Folder *folder, FolderItem *item, newlist = mlist; } - mlist = procmsg_sort_msg_list(mlist, item->sort_key, item->sort_type); + if (!uncached_only) + mlist = procmsg_sort_msg_list(mlist, item->sort_key, + item->sort_type); item->last_num = last_uid; diff --git a/libsylph/mh.c b/libsylph/mh.c index c90bb117..1ba2770e 100644 --- a/libsylph/mh.c +++ b/libsylph/mh.c @@ -260,7 +260,9 @@ static GSList *mh_get_msg_list_full(Folder *folder, FolderItem *item, procmsg_set_flags(mlist, item); - mlist = procmsg_sort_msg_list(mlist, item->sort_key, item->sort_type); + if (!uncached_only) + mlist = procmsg_sort_msg_list(mlist, item->sort_key, + item->sort_type); if (item->mark_queue) item->mark_dirty = TRUE; @@ -310,6 +310,10 @@ static gint inc_remote_account_mail(MainWindow *mainwin, PrefsAccount *account) } } else if (fltinfo->actions[FLT_ACTION_DELETE]) folder_item_remove_msg(inbox, msginfo); + else if (MSG_IS_NEW(msginfo->flags) || + MSG_IS_UNREAD(msginfo->flags)) + ++new_msgs; + if (fltinfo->drop_done) ++n_filtered; @@ -318,7 +322,8 @@ static gint inc_remote_account_mail(MainWindow *mainwin, PrefsAccount *account) procmsg_msg_list_free(mlist); - debug_print("inc_remote_account_mail(): %d message(s) filtered\n", n_filtered); + debug_print("inc_remote_account_mail(): INBOX: %d new, %d filtered\n", + new_msgs, n_filtered); if (!prefs_common.scan_all_after_inc && item != NULL && inbox == item) |