dovecot-1.2: Use mail_storage_set_critical() instead of i_error(...

dovecot at dovecot.org dovecot at dovecot.org
Sat Nov 1 14:55:31 EET 2008


details:   http://hg.dovecot.org/dovecot-1.2/rev/b46cf0979768
changeset: 8371:b46cf0979768
user:      Timo Sirainen <tss at iki.fi>
date:      Sat Nov 01 14:55:28 2008 +0200
description:
Use mail_storage_set_critical() instead of i_error() directly.

diffstat:

7 files changed, 33 insertions(+), 15 deletions(-)
src/lib-storage/index/maildir/maildir-mail.c    |    3 ++-
src/lib-storage/index/maildir/maildir-save.c    |    8 ++++++--
src/lib-storage/index/maildir/maildir-storage.c |    3 ++-
src/lib-storage/index/maildir/maildir-uidlist.c |   14 ++++++++++----
src/lib-storage/index/mbox/mbox-file.c          |    2 +-
src/lib-storage/index/mbox/mbox-lock.c          |   15 ++++++++++-----
src/lib-storage/index/shared/shared-storage.c   |    3 ++-

diffs (157 lines):

diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/maildir/maildir-mail.c
--- a/src/lib-storage/index/maildir/maildir-mail.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/maildir/maildir-mail.c	Sat Nov 01 14:55:28 2008 +0200
@@ -478,7 +478,8 @@ static void maildir_mail_set_cache_corru
 					       _mail->uid, &flags);
 		if (maildir_filename_get_size(fname, MAILDIR_EXTRA_VIRTUAL_SIZE,
 					      &size)) {
-			i_error("Maildir filename has wrong W value: %s/%s",
+			mail_storage_set_critical(_mail->box->storage,
+				"Maildir filename has wrong W value: %s/%s",
 				mbox->path, fname);
 		} else if (maildir_uidlist_lookup_ext(mbox->uidlist, _mail->uid,
 				MAILDIR_UIDLIST_REC_EXT_VSIZE) != NULL) {
diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/maildir/maildir-save.c
--- a/src/lib-storage/index/maildir/maildir-save.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/maildir/maildir-save.c	Sat Nov 01 14:55:28 2008 +0200
@@ -579,18 +579,22 @@ static int maildir_transaction_fsync_dir
 static int maildir_transaction_fsync_dirs(struct maildir_save_context *ctx,
 					  bool new_changed, bool cur_changed)
 {
+	struct mail_storage *storage = &ctx->mbox->storage->storage;
+
 	if (ctx->mbox->ibox.fsync_disable)
 		return 0;
 
 	if (new_changed) {
 		if (fdatasync_path(ctx->newdir) < 0) {
-			i_error("fdatasync_path(%s) failed: %m", ctx->newdir);
+			mail_storage_set_critical(storage,
+				"fdatasync_path(%s) failed: %m", ctx->newdir);
 			return -1;
 		}
 	}
 	if (cur_changed) {
 		if (fdatasync_path(ctx->curdir) < 0) {
-			i_error("fdatasync_path(%s) failed: %m", ctx->curdir);
+			mail_storage_set_critical(storage,
+				"fdatasync_path(%s) failed: %m", ctx->curdir);
 			return -1;
 		}
 	}
diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/maildir/maildir-storage.c
--- a/src/lib-storage/index/maildir/maildir-storage.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/maildir/maildir-storage.c	Sat Nov 01 14:55:28 2008 +0200
@@ -608,7 +608,8 @@ static int maildir_mailbox_create(struct
 			"Mailbox was deleted while it was being created");
 		return -1;
 	} else {
-		i_error("open(%s, O_CREAT) failed: %m", path);
+		mail_storage_set_critical(_storage,
+			"open(%s, O_CREAT) failed: %m", path);
 	}
 	return 0;
 }
diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/maildir/maildir-uidlist.c
--- a/src/lib-storage/index/maildir/maildir-uidlist.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/maildir/maildir-uidlist.c	Sat Nov 01 14:55:28 2008 +0200
@@ -260,9 +260,13 @@ struct maildir_uidlist *maildir_uidlist_
 
 static void maildir_uidlist_close(struct maildir_uidlist *uidlist)
 {
+	struct mail_storage *storage = uidlist->ibox->box.storage;
+
 	if (uidlist->fd != -1) {
-		if (close(uidlist->fd) < 0)
-			i_error("close(%s) failed: %m", uidlist->path);
+		if (close(uidlist->fd) < 0) {
+			mail_storage_set_critical(storage,
+				"close(%s) failed: %m", uidlist->path);
+		}
 		uidlist->fd = -1;
 		uidlist->fd_ino = 0;
 	}
@@ -694,8 +698,10 @@ maildir_uidlist_update_read(struct maild
 
 	i_stream_destroy(&input);
 	if (ret <= 0) {
-		if (close(fd) < 0)
-			i_error("close(%s) failed: %m", uidlist->path);
+		if (close(fd) < 0) {
+			mail_storage_set_critical(storage,
+				"close(%s) failed: %m", uidlist->path);
+		}
 	}
 	return ret;
 }
diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/mbox/mbox-file.c
--- a/src/lib-storage/index/mbox/mbox-file.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/mbox/mbox-file.c	Sat Nov 01 14:55:28 2008 +0200
@@ -53,7 +53,7 @@ void mbox_file_close(struct mbox_mailbox
 
 	if (mbox->mbox_fd != -1) {
 		if (close(mbox->mbox_fd) < 0)
-			i_error("close(mbox) failed: %m");
+			mbox_set_syscall_error(mbox, "close()");
 		mbox->mbox_fd = -1;
 	}
 }
diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/mbox/mbox-lock.c
--- a/src/lib-storage/index/mbox/mbox-lock.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/mbox/mbox-lock.c	Sat Nov 01 14:55:28 2008 +0200
@@ -260,7 +260,8 @@ static int mbox_dotlock_privileged_op(st
 
 	orig_dir_fd = open(".", O_RDONLY);
 	if (orig_dir_fd == -1) {
-		i_error("open(.) failed: %m");
+		mail_storage_set_critical(&mbox->storage->storage,
+					  "open(.) failed: %m");
 		return -1;
 	}
 
@@ -279,7 +280,8 @@ static int mbox_dotlock_privileged_op(st
 	} else {
 		dir = t_strdup_until(mbox->path, fname);
 		if (chdir(dir) < 0) {
-			i_error("chdir(%s) failed: %m", dir);
+			mail_storage_set_critical(&mbox->storage->storage,
+				"chdir(%s) failed: %m", dir);
 			(void)close(orig_dir_fd);
 			return -1;
 		}
@@ -287,7 +289,8 @@ static int mbox_dotlock_privileged_op(st
 	}
 	if (op == MBOX_DOTLOCK_OP_LOCK) {
 		if (access(fname, R_OK) < 0) {
-			i_error("access(%s) failed: %m", mbox->path);
+			mail_storage_set_critical(&mbox->storage->storage,
+				"access(%s) failed: %m", mbox->path);
 			return -1;
 		}
 	}
@@ -322,8 +325,10 @@ static int mbox_dotlock_privileged_op(st
 
 	restrict_access_drop_priv_gid();
 
-	if (fchdir(orig_dir_fd) < 0)
-		i_error("fchdir() failed: %m");
+	if (fchdir(orig_dir_fd) < 0) {
+		mail_storage_set_critical(&mbox->storage->storage,
+			"fchdir() failed: %m");
+	}
 	(void)close(orig_dir_fd);
 	return ret;
 }
diff -r ffe34451c01a -r b46cf0979768 src/lib-storage/index/shared/shared-storage.c
--- a/src/lib-storage/index/shared/shared-storage.c	Sat Nov 01 14:49:12 2008 +0200
+++ b/src/lib-storage/index/shared/shared-storage.c	Sat Nov 01 14:55:28 2008 +0200
@@ -190,7 +190,8 @@ int shared_storage_get_namespace(struct 
 	var_expand(location, storage->location, tab);
 	if (mail_storage_create(ns, NULL, str_c(location), _storage->flags,
 				_storage->lock_method, &error) < 0) {
-		i_error("Namespace '%s': %s", ns->prefix, error);
+		mail_storage_set_critical(_storage, "Namespace '%s': %s",
+					  ns->prefix, error);
 		return -1;
 	}
 	/* FIXME: we could remove namespaces here that don't have usable


More information about the dovecot-cvs mailing list