changeset 5183:68808a3021b0 HEAD

If o_stream_send_istream() fails, make sure errno is set to outstream.stream_errno.
author Timo Sirainen <tss@iki.fi>
date Thu, 22 Feb 2007 16:10:05 +0200
parents 52389cd2c474
children 47e393c4eb4b
files src/lib/ostream.c
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/ostream.c	Thu Feb 22 16:08:43 2007 +0200
+++ b/src/lib/ostream.c	Thu Feb 22 16:10:05 2007 +0200
@@ -146,11 +146,15 @@
 			    struct istream *instream)
 {
 	struct _ostream *_outstream = outstream->real_stream;
+	off_t ret;
 
 	if (outstream->closed || instream->closed)
 		return -1;
 
-	return _outstream->send_istream(_outstream, instream);
+	ret = _outstream->send_istream(_outstream, instream);
+	if (ret < 0)
+		errno = outstream->stream_errno;
+	return ret;
 }
 
 struct ostream *_o_stream_create(struct _ostream *_stream, pool_t pool)