Mercurial > dovecot > original-hg > dovecot-1.2
changeset 6289:4a57baddc8b8 HEAD
Added mail.close() virtual function.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 13 Aug 2007 17:19:59 +0300 |
parents | 79d9c1703b78 |
children | b04d136f8174 |
files | src/lib-storage/index/cydir/cydir-mail.c src/lib-storage/index/dbox/dbox-mail.c src/lib-storage/index/index-mail.c src/lib-storage/index/index-mail.h src/lib-storage/index/maildir/maildir-mail.c src/lib-storage/index/mbox/mbox-mail.c src/lib-storage/mail-storage-private.h |
diffstat | 7 files changed, 11 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/cydir/cydir-mail.c Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/index/cydir/cydir-mail.c Mon Aug 13 17:19:59 2007 +0300 @@ -123,6 +123,7 @@ } struct mail_vfuncs cydir_mail_vfuncs = { + index_mail_close, index_mail_free, index_mail_set_seq, index_mail_set_uid,
--- a/src/lib-storage/index/dbox/dbox-mail.c Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/index/dbox/dbox-mail.c Mon Aug 13 17:19:59 2007 +0300 @@ -236,6 +236,7 @@ } struct mail_vfuncs dbox_mail_vfuncs = { + index_mail_close, index_mail_free, index_mail_set_seq, index_mail_set_uid,
--- a/src/lib-storage/index/index-mail.c Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/index/index-mail.c Mon Aug 13 17:19:59 2007 +0300 @@ -892,8 +892,10 @@ return &mail->mail.mail; } -static void index_mail_close(struct index_mail *mail) +void index_mail_close(struct mail *_mail) { + struct index_mail *mail = (struct index_mail *)_mail; + if (mail->data.parser_ctx != NULL) (void)message_parser_deinit(&mail->data.parser_ctx); if (mail->data.stream != NULL) @@ -906,7 +908,7 @@ { struct index_mail_data *data = &mail->data; - index_mail_close(mail); + mail->mail.v.close(&mail->mail.mail); memset(data, 0, sizeof(*data)); p_clear(mail->data_pool); @@ -1082,7 +1084,7 @@ { struct index_mail *mail = (struct index_mail *)_mail; - index_mail_close(mail); + mail->mail.v.close(_mail); if (mail->header_data != NULL) buffer_free(mail->header_data);
--- a/src/lib-storage/index/index-mail.h Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/index/index-mail.h Mon Aug 13 17:19:59 2007 +0300 @@ -133,6 +133,7 @@ struct mailbox_header_lookup_ctx *wanted_headers); void index_mail_set_seq(struct mail *mail, uint32_t seq); bool index_mail_set_uid(struct mail *mail, uint32_t uid); +void index_mail_close(struct mail *mail); void index_mail_free(struct mail *mail); bool index_mail_want_parse_headers(struct index_mail *mail);
--- a/src/lib-storage/index/maildir/maildir-mail.c Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/index/maildir/maildir-mail.c Mon Aug 13 17:19:59 2007 +0300 @@ -387,6 +387,7 @@ } struct mail_vfuncs maildir_mail_vfuncs = { + index_mail_close, index_mail_free, index_mail_set_seq, index_mail_set_uid,
--- a/src/lib-storage/index/mbox/mbox-mail.c Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/index/mbox/mbox-mail.c Mon Aug 13 17:19:59 2007 +0300 @@ -231,6 +231,7 @@ } struct mail_vfuncs mbox_mail_vfuncs = { + index_mail_close, index_mail_free, index_mail_set_seq, index_mail_set_uid,
--- a/src/lib-storage/mail-storage-private.h Mon Aug 13 17:17:03 2007 +0300 +++ b/src/lib-storage/mail-storage-private.h Mon Aug 13 17:19:59 2007 +0300 @@ -195,6 +195,7 @@ }; struct mail_vfuncs { + void (*close)(struct mail *mail); void (*free)(struct mail *mail); void (*set_seq)(struct mail *mail, uint32_t seq); bool (*set_uid)(struct mail *mail, uint32_t uid);