dovecot-2.2: imapc: Avoid FETCH INTERNALDATE for getting save_da...
dovecot at dovecot.org
dovecot at dovecot.org
Sat Nov 16 20:10:36 EET 2013
details: http://hg.dovecot.org/dovecot-2.2/rev/4597e6572ba1
changeset: 16961:4597e6572ba1
user: Timo Sirainen <tss at iki.fi>
date: Sat Nov 16 20:09:19 2013 +0200
description:
imapc: Avoid FETCH INTERNALDATE for getting save_date when we already know received_date.
diffstat:
src/lib-storage/index/imapc/imapc-mail-fetch.c | 3 +++
src/lib-storage/index/imapc/imapc-mail.c | 6 ++++++
2 files changed, 9 insertions(+), 0 deletions(-)
diffs (29 lines):
diff -r 52fccca876b9 -r 4597e6572ba1 src/lib-storage/index/imapc/imapc-mail-fetch.c
--- a/src/lib-storage/index/imapc/imapc-mail-fetch.c Sat Nov 16 20:06:34 2013 +0200
+++ b/src/lib-storage/index/imapc/imapc-mail-fetch.c Sat Nov 16 20:09:19 2013 +0200
@@ -223,6 +223,9 @@
if ((data->wanted_fields & MAIL_FETCH_RECEIVED_DATE) != 0 &&
data->received_date == (time_t)-1)
fields |= MAIL_FETCH_RECEIVED_DATE;
+ if ((data->wanted_fields & MAIL_FETCH_SAVE_DATE) != 0 &&
+ data->save_date == (time_t)-1 && data->received_date == (time_t)-1)
+ fields |= MAIL_FETCH_RECEIVED_DATE;
if ((data->wanted_fields & MAIL_FETCH_PHYSICAL_SIZE) != 0 &&
data->physical_size == (uoff_t)-1 &&
IMAPC_BOX_HAS_FEATURE(mbox, IMAPC_FEATURE_RFC822_SIZE))
diff -r 52fccca876b9 -r 4597e6572ba1 src/lib-storage/index/imapc/imapc-mail.c
--- a/src/lib-storage/index/imapc/imapc-mail.c Sat Nov 16 20:06:34 2013 +0200
+++ b/src/lib-storage/index/imapc/imapc-mail.c Sat Nov 16 20:09:19 2013 +0200
@@ -296,6 +296,12 @@
if ((data->wanted_fields & MAIL_FETCH_RECEIVED_DATE) != 0)
(void)index_mail_get_received_date(_mail, &date);
+ if ((data->wanted_fields & MAIL_FETCH_SAVE_DATE) != 0) {
+ if (index_mail_get_save_date(_mail, &date) < 0) {
+ (void)index_mail_get_received_date(_mail, &date);
+ data->save_date = data->received_date;
+ }
+ }
if ((data->wanted_fields & MAIL_FETCH_PHYSICAL_SIZE) != 0) {
if (index_mail_get_physical_size(_mail, &size) < 0 &&
!IMAPC_BOX_HAS_FEATURE(mbox, IMAPC_FEATURE_RFC822_SIZE))
More information about the dovecot-cvs
mailing list