dovecot-2.2: lib-fs: Improved error logging

dovecot at dovecot.org dovecot at dovecot.org
Fri Oct 24 20:01:52 UTC 2014


details:   http://hg.dovecot.org/dovecot-2.2/rev/d4570546b51c
changeset: 17997:d4570546b51c
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Oct 24 23:00:56 2014 +0300
description:
lib-fs: Improved error logging

diffstat:

 src/lib-fs/fs-api.c |  20 ++++++++++++--------
 1 files changed, 12 insertions(+), 8 deletions(-)

diffs (50 lines):

diff -r 7681fcd1ba43 -r d4570546b51c src/lib-fs/fs-api.c
--- a/src/lib-fs/fs-api.c	Fri Oct 24 22:18:29 2014 +0300
+++ b/src/lib-fs/fs-api.c	Fri Oct 24 23:00:56 2014 +0300
@@ -331,8 +331,9 @@
 		return -1;
 	}
 	if (ret < 0 && file->pending_read_input->stream_errno != 0) {
-		fs_set_error(file->fs, "read(%s) failed: %m",
-			     i_stream_get_name(file->pending_read_input));
+		fs_set_error(file->fs, "read(%s) failed: %s",
+			     i_stream_get_name(file->pending_read_input),
+			     i_stream_get_error(file->pending_read_input));
 	} else {
 		ret = I_MIN(size, data_size);
 		memcpy(buf, data, ret);
@@ -422,8 +423,9 @@
 		output = fs_write_stream(file);
 		if ((ret = o_stream_send(output, data, size)) < 0) {
 			err = errno;
-			fs_set_error(file->fs, "fs_write(%s) failed: %m",
-				     o_stream_get_name(output));
+			fs_set_error(file->fs, "fs_write(%s) failed: %s",
+				     o_stream_get_name(output),
+				     o_stream_get_error(output));
 			fs_write_stream_abort(file, &output);
 			errno = err;
 			return -1;
@@ -612,16 +614,18 @@
 	while (o_stream_send_istream(dest->copy_output, dest->copy_input) > 0) ;
 	if (dest->copy_input->stream_errno != 0) {
 		errno = dest->copy_input->stream_errno;
-		fs_set_error(dest->fs, "read(%s) failed: %m",
-			     i_stream_get_name(dest->copy_input));
+		fs_set_error(dest->fs, "read(%s) failed: %s",
+			     i_stream_get_name(dest->copy_input),
+			     i_stream_get_error(dest->copy_input));
 		i_stream_unref(&dest->copy_input);
 		fs_write_stream_abort(dest, &dest->copy_output);
 		return -1;
 	}
 	if (dest->copy_output->stream_errno != 0) {
 		errno = dest->copy_output->stream_errno;
-		fs_set_error(dest->fs, "write(%s) failed: %m",
-			     o_stream_get_name(dest->copy_output));
+		fs_set_error(dest->fs, "write(%s) failed: %s",
+			     o_stream_get_name(dest->copy_output),
+			     o_stream_get_error(dest->copy_output));
 		i_stream_unref(&dest->copy_input);
 		fs_write_stream_abort(dest, &dest->copy_output);
 		return -1;


More information about the dovecot-cvs mailing list