From: Timo Sirainen Date: Thu, 17 Jan 2019 10:13:38 +0000 (+0200) Subject: maildir: Fix crash at error handling X-Git-Tag: 2.3.18~96 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=616684a8fe0cccaaec7247d6d3be396e7bf924eb;p=thirdparty%2Fdovecot%2Fcore.git maildir: Fix crash at error handling At this point dest_mail is already NULL. Mainly could happen when running out of disk space. --- diff --git a/src/lib-storage/index/maildir/maildir-save.c b/src/lib-storage/index/maildir/maildir-save.c index f4396fcf15..5cf7d6abb2 100644 --- a/src/lib-storage/index/maildir/maildir-save.c +++ b/src/lib-storage/index/maildir/maildir-save.c @@ -105,9 +105,9 @@ static int maildir_file_move(struct maildir_save_context *ctx, MAIL_ERRSTR_NO_QUOTA); return -1; } else { - mail_set_critical(ctx->ctx.dest_mail, - "rename(%s, %s) failed: %m", - tmp_path, new_path); + mailbox_set_critical(&ctx->mbox->box, + "rename(%s, %s) failed: %m", + tmp_path, new_path); return -1; } } @@ -666,14 +666,14 @@ static int maildir_transaction_fsync_dirs(struct maildir_save_context *ctx, if (new_changed) { if (fdatasync_path(ctx->newdir) < 0) { - mail_set_critical(ctx->ctx.dest_mail, + mailbox_set_critical(&ctx->mbox->box, "fdatasync_path(%s) failed: %m", ctx->newdir); return -1; } } if (cur_changed) { if (fdatasync_path(ctx->curdir) < 0) { - mail_set_critical(ctx->ctx.dest_mail, + mailbox_set_critical(&ctx->mbox->box, "fdatasync_path(%s) failed: %m", ctx->curdir); return -1; }