dovecot-2.0: lib-storage: mail_get_parts() no longer returns con...
dovecot at dovecot.org
dovecot at dovecot.org
Sat Mar 27 02:41:11 EET 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/679e99e430d7
changeset: 11000:679e99e430d7
user: Timo Sirainen <tss at iki.fi>
date: Sat Mar 27 02:39:49 2010 +0200
description:
lib-storage: mail_get_parts() no longer returns const pointer.
The struct message_part contained context-pointer and other APIs were using
it, so the pointer really couldn't be const without casting it away
sometimes.
diffstat:
src/imap/imap-fetch-body.c | 2 +-
src/lib-mail/message-search.c | 7 +++----
src/lib-mail/message-search.h | 2 +-
src/lib-storage/index/index-mail.c | 3 +--
src/lib-storage/index/index-mail.h | 3 +--
src/lib-storage/index/index-search.c | 2 +-
src/lib-storage/mail-storage-private.h | 2 +-
src/lib-storage/mail-storage.h | 2 +-
src/lib-storage/mail.c | 2 +-
src/lib-storage/test-mail.c | 2 +-
src/plugins/virtual/virtual-mail.c | 2 +-
11 files changed, 13 insertions(+), 16 deletions(-)
diffs (152 lines):
diff -r a2c6c91635b5 -r 679e99e430d7 src/imap/imap-fetch-body.c
--- a/src/imap/imap-fetch-body.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/imap/imap-fetch-body.c Sat Mar 27 02:39:49 2010 +0200
@@ -496,7 +496,7 @@
static int part_find(struct mail *mail, const struct imap_fetch_body_data *body,
const struct message_part **part_r, const char **section_r)
{
- const struct message_part *part;
+ struct message_part *part;
const char *path;
unsigned int num;
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-mail/message-search.c
--- a/src/lib-mail/message-search.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-mail/message-search.c Sat Mar 27 02:39:49 2010 +0200
@@ -209,7 +209,7 @@
static int
message_search_msg_real(struct message_search_context *ctx,
- struct istream *input, const struct message_part *parts)
+ struct istream *input, struct message_part *parts)
{
const enum message_header_parser_flags hdr_parser_flags =
MESSAGE_HEADER_PARSER_FLAG_CLEAN_ONELINE;
@@ -221,8 +221,7 @@
message_search_reset(ctx);
if (parts != NULL) {
- parser_ctx = message_parser_init_from_parts(
- (struct message_part *)parts,
+ parser_ctx = message_parser_init_from_parts(parts,
input, hdr_parser_flags, 0);
} else {
parser_ctx = message_parser_init(pool_datastack_create(),
@@ -250,7 +249,7 @@
}
int message_search_msg(struct message_search_context *ctx,
- struct istream *input, const struct message_part *parts)
+ struct istream *input, struct message_part *parts)
{
int ret;
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-mail/message-search.h
--- a/src/lib-mail/message-search.h Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-mail/message-search.h Sat Mar 27 02:39:49 2010 +0200
@@ -27,6 +27,6 @@
/* Search a full message. Returns 1 if match was found, 0 if not,
-1 if error (if stream_error == 0, the parts contained broken data) */
int message_search_msg(struct message_search_context *ctx,
- struct istream *input, const struct message_part *parts);
+ struct istream *input, struct message_part *parts);
#endif
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/index/index-mail.c
--- a/src/lib-storage/index/index-mail.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/index/index-mail.c Sat Mar 27 02:39:49 2010 +0200
@@ -196,8 +196,7 @@
return &data->keyword_indexes;
}
-int index_mail_get_parts(struct mail *_mail,
- const struct message_part **parts_r)
+int index_mail_get_parts(struct mail *_mail, struct message_part **parts_r)
{
struct index_mail *mail = (struct index_mail *)_mail;
struct index_mail_data *data = &mail->data;
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/index/index-mail.h
--- a/src/lib-storage/index/index-mail.h Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/index/index-mail.h Sat Mar 27 02:39:49 2010 +0200
@@ -182,8 +182,7 @@
const char *const *index_mail_get_keywords(struct mail *_mail);
const ARRAY_TYPE(keyword_indexes) *
index_mail_get_keyword_indexes(struct mail *_mail);
-int index_mail_get_parts(struct mail *_mail,
- const struct message_part **parts_r);
+int index_mail_get_parts(struct mail *_mail, struct message_part **parts_r);
int index_mail_get_received_date(struct mail *_mail, time_t *date_r);
int index_mail_get_save_date(struct mail *_mail, time_t *date_r);
int index_mail_get_date(struct mail *_mail, time_t *date_r, int *timezone_r);
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/index/index-search.c
--- a/src/lib-storage/index/index-search.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/index/index-search.c Sat Mar 27 02:39:49 2010 +0200
@@ -73,7 +73,7 @@
struct search_body_context {
struct index_search_context *index_ctx;
struct istream *input;
- const struct message_part *part;
+ struct message_part *part;
};
static const enum message_header_parser_flags hdr_parser_flags =
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/mail-storage-private.h
--- a/src/lib-storage/mail-storage-private.h Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/mail-storage-private.h Sat Mar 27 02:39:49 2010 +0200
@@ -281,7 +281,7 @@
uint64_t (*get_modseq)(struct mail *mail);
int (*get_parts)(struct mail *mail,
- const struct message_part **parts_r);
+ struct message_part **parts_r);
int (*get_date)(struct mail *mail, time_t *date_r, int *timezone_r);
int (*get_received_date)(struct mail *mail, time_t *date_r);
int (*get_save_date)(struct mail *mail, time_t *date_r);
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/mail-storage.h
--- a/src/lib-storage/mail-storage.h Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/mail-storage.h Sat Mar 27 02:39:49 2010 +0200
@@ -614,7 +614,7 @@
uint64_t mail_get_modseq(struct mail *mail);
/* Returns message's MIME parts */
-int mail_get_parts(struct mail *mail, const struct message_part **parts_r);
+int mail_get_parts(struct mail *mail, struct message_part **parts_r);
/* Get the Date-header of the mail. Timezone is in minutes. date=0 if it
wasn't found or it was invalid. */
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/mail.c
--- a/src/lib-storage/mail.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/mail.c Sat Mar 27 02:39:49 2010 +0200
@@ -68,7 +68,7 @@
return p->v.get_keyword_indexes(mail);
}
-int mail_get_parts(struct mail *mail, const struct message_part **parts_r)
+int mail_get_parts(struct mail *mail, struct message_part **parts_r)
{
struct mail_private *p = (struct mail_private *)mail;
diff -r a2c6c91635b5 -r 679e99e430d7 src/lib-storage/test-mail.c
--- a/src/lib-storage/test-mail.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/lib-storage/test-mail.c Sat Mar 27 02:39:49 2010 +0200
@@ -82,7 +82,7 @@
static int
test_mail_get_parts(struct mail *mail ATTR_UNUSED,
- const struct message_part **parts_r ATTR_UNUSED)
+ struct message_part **parts_r ATTR_UNUSED)
{
return -1;
}
diff -r a2c6c91635b5 -r 679e99e430d7 src/plugins/virtual/virtual-mail.c
--- a/src/plugins/virtual/virtual-mail.c Sat Mar 27 00:35:44 2010 +0000
+++ b/src/plugins/virtual/virtual-mail.c Sat Mar 27 02:39:49 2010 +0200
@@ -172,7 +172,7 @@
}
static int
-virtual_mail_get_parts(struct mail *mail, const struct message_part **parts_r)
+virtual_mail_get_parts(struct mail *mail, struct message_part **parts_r)
{
struct virtual_mail *vmail = (struct virtual_mail *)mail;
More information about the dovecot-cvs
mailing list