[dovecot-cvs] dovecot/src/lib-storage mail-copy.c, 1.4,
1.5 mail-copy.h, 1.2, 1.3 mail-storage-private.h, 1.18,
1.19 mail-storage.c, 1.43, 1.44 mail-storage.h, 1.99, 1.100
cras at dovecot.org
cras at dovecot.org
Fri Oct 7 12:34:12 EEST 2005
Update of /var/lib/cvs/dovecot/src/lib-storage
In directory talvi:/tmp/cvs-serv4310/lib-storage
Modified Files:
mail-copy.c mail-copy.h mail-storage-private.h mail-storage.c
mail-storage.h
Log Message:
Added flags and keywords parameters to mailbox_copy() in case they're wanted
to be changed while copying.
Index: mail-copy.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/mail-copy.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- mail-copy.c 15 Mar 2005 19:01:51 -0000 1.4
+++ mail-copy.c 7 Oct 2005 09:34:08 -0000 1.5
@@ -6,12 +6,12 @@
#include "mail-copy.h"
int mail_storage_copy(struct mailbox_transaction_context *t, struct mail *mail,
+ enum mail_flags flags, struct mail_keywords *keywords,
struct mail *dest_mail)
{
struct mail_save_context *ctx;
struct istream *input;
- struct mail_keywords *keywords;
- const char *from_envelope, *const *keywords_list;
+ const char *from_envelope;
input = mail_get_stream(mail, NULL, NULL);
if (input == NULL)
@@ -19,14 +19,9 @@
from_envelope = mail_get_special(mail, MAIL_FETCH_FROM_ENVELOPE);
- keywords_list = mail_get_keywords(mail);
- keywords = keywords_list == NULL ? NULL :
- mailbox_keywords_create(t, keywords_list);
- ctx = mailbox_save_init(t, mail_get_flags(mail), keywords,
+ ctx = mailbox_save_init(t, flags, keywords,
mail_get_received_date(mail),
0, from_envelope, input, dest_mail != NULL);
- if (keywords != NULL)
- mailbox_keywords_free(t, keywords);
while (i_stream_read(input) != -1) {
if (mailbox_save_continue(ctx) < 0)
Index: mail-copy.h
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/mail-copy.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- mail-copy.h 15 Mar 2005 19:01:51 -0000 1.2
+++ mail-copy.h 7 Oct 2005 09:34:08 -0000 1.3
@@ -2,6 +2,7 @@
#define __MAIL_COPY_H
int mail_storage_copy(struct mailbox_transaction_context *t, struct mail *mail,
+ enum mail_flags flags, struct mail_keywords *keywords,
struct mail *dest_mail);
#endif
Index: mail-storage-private.h
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/mail-storage-private.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- mail-storage-private.h 29 Jul 2005 08:43:04 -0000 1.18
+++ mail-storage-private.h 7 Oct 2005 09:34:08 -0000 1.19
@@ -143,6 +143,7 @@
void (*save_cancel)(struct mail_save_context *ctx);
int (*copy)(struct mailbox_transaction_context *t, struct mail *mail,
+ enum mail_flags flags, struct mail_keywords *keywords,
struct mail *dest_mail);
int (*is_inconsistent)(struct mailbox *box);
Index: mail-storage.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/mail-storage.c,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- mail-storage.c 19 Aug 2005 08:43:20 -0000 1.43
+++ mail-storage.c 7 Oct 2005 09:34:08 -0000 1.44
@@ -454,9 +454,10 @@
}
int mailbox_copy(struct mailbox_transaction_context *t, struct mail *mail,
+ enum mail_flags flags, struct mail_keywords *keywords,
struct mail *dest_mail)
{
- return t->box->v.copy(t, mail, dest_mail);
+ return t->box->v.copy(t, mail, flags, keywords, dest_mail);
}
int mailbox_is_inconsistent(struct mailbox *box)
Index: mail-storage.h
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/mail-storage.h,v
retrieving revision 1.99
retrieving revision 1.100
diff -u -d -r1.99 -r1.100
--- mail-storage.h 30 Sep 2005 18:55:00 -0000 1.99
+++ mail-storage.h 7 Oct 2005 09:34:08 -0000 1.100
@@ -395,6 +395,7 @@
accessed using it. Note that setting it non-NULL may require mailbox
syncing, so don't give give it unless you need it. */
int mailbox_copy(struct mailbox_transaction_context *t, struct mail *mail,
+ enum mail_flags flags, struct mail_keywords *keywords,
struct mail *dest_mail);
/* Returns TRUE if mailbox is now in inconsistent state, meaning that
More information about the dovecot-cvs
mailing list