dovecot-2.0: lib-storage: Removed some code duplication.
dovecot at dovecot.org
dovecot at dovecot.org
Mon Feb 15 02:13:16 EET 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/0bcb415c7a71
changeset: 10717:0bcb415c7a71
user: Timo Sirainen <tss at iki.fi>
date: Mon Feb 15 02:13:14 2010 +0200
description:
lib-storage: Removed some code duplication.
diffstat:
src/lib-storage/index/cydir/cydir-save.c | 5 -----
src/lib-storage/index/dbox-multi/mdbox-save.c | 5 -----
src/lib-storage/index/dbox-single/sdbox-save.c | 5 -----
src/lib-storage/index/maildir/maildir-copy.c | 5 -----
src/lib-storage/index/maildir/maildir-save.c | 5 -----
src/lib-storage/index/mbox/mbox-save.c | 5 -----
src/lib-storage/mail-storage.c | 12 ++++++++++++
7 files changed, 12 insertions(+), 30 deletions(-)
diffs (119 lines):
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/index/cydir/cydir-save.c
--- a/src/lib-storage/index/cydir/cydir-save.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/index/cydir/cydir-save.c Mon Feb 15 02:13:14 2010 +0200
@@ -84,11 +84,6 @@
enum mail_flags save_flags;
struct istream *crlf_input;
- if (mail_index_is_deleted(trans->box->index)) {
- mailbox_set_deleted(trans->box);
- return -1;
- }
-
T_BEGIN {
const char *path;
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/index/dbox-multi/mdbox-save.c
--- a/src/lib-storage/index/dbox-multi/mdbox-save.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/index/dbox-multi/mdbox-save.c Mon Feb 15 02:13:14 2010 +0200
@@ -97,11 +97,6 @@
struct dbox_save_mail *save_mail;
uoff_t mail_size, append_offset;
- if (mail_index_is_deleted(_ctx->transaction->box->index)) {
- mailbox_set_deleted(_ctx->transaction->box);
- return -1;
- }
-
/* get the size of the mail to be saved, if possible */
if (i_stream_get_size(input, TRUE, &mail_size) <= 0) {
const struct stat *st;
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/index/dbox-single/sdbox-save.c
--- a/src/lib-storage/index/dbox-single/sdbox-save.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/index/dbox-single/sdbox-save.c Mon Feb 15 02:13:14 2010 +0200
@@ -78,11 +78,6 @@
struct dbox_file *file;
int ret;
- if (mail_index_is_deleted(_ctx->transaction->box->index)) {
- mailbox_set_deleted(_ctx->transaction->box);
- return -1;
- }
-
file = sdbox_file_init(ctx->mbox, 0);
ctx->append_ctx = dbox_file_append_init(file);
ret = dbox_file_get_append_stream(ctx->append_ctx,
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/index/maildir/maildir-copy.c
--- a/src/lib-storage/index/maildir/maildir-copy.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/index/maildir/maildir-copy.c Mon Feb 15 02:13:14 2010 +0200
@@ -170,11 +170,6 @@
return 0;
}
- if (mail_index_is_deleted(dest_mbox->box.index)) {
- mailbox_set_deleted(&dest_mbox->box);
- return -1;
- }
-
memset(&do_ctx, 0, sizeof(do_ctx));
do_ctx.dest_path = str_new(default_pool, 512);
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/index/maildir/maildir-save.c
--- a/src/lib-storage/index/maildir/maildir-save.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/index/maildir/maildir-save.c Mon Feb 15 02:13:14 2010 +0200
@@ -305,11 +305,6 @@
string_t *path;
int fd;
- if (mail_index_is_deleted(mbox->box.index)) {
- mailbox_set_deleted(box);
- return -1;
- }
-
path = t_str_new(256);
str_append(path, dir);
str_append_c(path, '/');
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/index/mbox/mbox-save.c
--- a/src/lib-storage/index/mbox/mbox-save.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/index/mbox/mbox-save.c Mon Feb 15 02:13:14 2010 +0200
@@ -261,11 +261,6 @@
return -1;
}
- if (mail_index_is_deleted(mbox->box.index)) {
- mailbox_set_deleted(&mbox->box);
- return -1;
- }
-
if ((_t->flags & MAILBOX_TRANSACTION_FLAG_ASSIGN_UIDS) != 0 ||
ctx->ctx.uid != 0)
want_mail = TRUE;
diff -r 14b287a3523e -r 0bcb415c7a71 src/lib-storage/mail-storage.c
--- a/src/lib-storage/mail-storage.c Mon Feb 15 02:08:02 2010 +0200
+++ b/src/lib-storage/mail-storage.c Mon Feb 15 02:13:14 2010 +0200
@@ -1188,6 +1188,11 @@
struct mailbox *box = (*ctx)->transaction->box;
int ret;
+ if (mail_index_is_deleted(box->index)) {
+ mailbox_set_deleted(box);
+ return -1;
+ }
+
if (box->v.save_begin == NULL) {
mail_storage_set_error(box->storage, MAIL_ERROR_NOTPOSSIBLE,
"Saving messages not supported");
@@ -1242,6 +1247,13 @@
int ret;
*_ctx = NULL;
+
+ if (mail_index_is_deleted(box->index)) {
+ mailbox_set_deleted(box);
+ mailbox_save_cancel(_ctx);
+ return -1;
+ }
+
ret = ctx->transaction->box->v.copy(ctx, mail);
if (keywords != NULL)
mailbox_keywords_unref(box, &keywords);
More information about the dovecot-cvs
mailing list