dovecot-2.0: dsync: If msg input reading fails, don't also log a...
dovecot at dovecot.org
dovecot at dovecot.org
Mon Oct 25 20:26:55 EEST 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/d46a3fca7259
changeset: 12351:d46a3fca7259
user: Timo Sirainen <tss at iki.fi>
date: Mon Oct 25 18:26:50 2010 +0100
description:
dsync: If msg input reading fails, don't also log a wrong "Unknown internal error" line.
diffstat:
src/dsync/dsync-worker-local.c | 21 +++++++++++----------
1 files changed, 11 insertions(+), 10 deletions(-)
diffs (40 lines):
diff -r 1b2caff94b49 -r d46a3fca7259 src/dsync/dsync-worker-local.c
--- a/src/dsync/dsync-worker-local.c Mon Oct 25 18:11:04 2010 +0100
+++ b/src/dsync/dsync-worker-local.c Mon Oct 25 18:26:50 2010 +0100
@@ -1630,7 +1630,7 @@
{
struct mailbox *dest_box = worker->ext_mail->box;
dsync_worker_save_callback_t *callback;
- int ret;
+ ssize_t ret;
while ((ret = i_stream_read(worker->save_input)) > 0) {
if (mailbox_save_continue(worker->save_ctx) < 0)
@@ -1654,17 +1654,18 @@
errno = worker->save_input->stream_errno;
i_error("read(msg input) failed: %m");
mailbox_save_cancel(&worker->save_ctx);
- ret = -1;
+ dsync_worker_set_failure(&worker->worker);
} else {
i_assert(worker->save_input->eof);
- ret = mailbox_save_finish(&worker->save_ctx);
- }
- if (ret < 0) {
- struct mail_storage *storage = mailbox_get_storage(dest_box);
- i_error("Can't save message to mailbox %s: %s",
- mailbox_get_vname(dest_box),
- mail_storage_get_last_error(storage, NULL));
- dsync_worker_set_failure(&worker->worker);
+ if (mailbox_save_finish(&worker->save_ctx) < 0) {
+ struct mail_storage *storage =
+ mailbox_get_storage(dest_box);
+
+ i_error("Can't save message to mailbox %s: %s",
+ mailbox_get_vname(dest_box),
+ mail_storage_get_last_error(storage, NULL));
+ dsync_worker_set_failure(&worker->worker);
+ }
}
callback = worker->save_callback;
worker->save_callback = NULL;
More information about the dovecot-cvs
mailing list