summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2006-01-20 13:21:58 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2006-01-20 13:21:58 +0000
commit9a634b93c85617fe56c4606f3a692a37437c4080 (patch)
treecb6f9299af9319a0e366f76a0d1dd2f9f0d2d1c2
parent070ac168cdd5335515703b6ee764ac67c7cdfe63 (diff)
downloadmailutils-9a634b93c85617fe56c4606f3a692a37437c4080.tar.gz
mailutils-9a634b93c85617fe56c4606f3a692a37437c4080.tar.bz2
(_file_write): Return ENOSPC if fwrite returns 0.
-rw-r--r--mailbox/file_stream.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/mailbox/file_stream.c b/mailbox/file_stream.c
index 6f5c1da74..10c4f7762 100644
--- a/mailbox/file_stream.c
+++ b/mailbox/file_stream.c
@@ -163,7 +163,7 @@ _file_readline (mu_stream_t stream, char *optr, size_t osize,
static int
_file_write (mu_stream_t stream, const char *iptr, size_t isize,
- mu_off_t offset, size_t *nbytes)
+ mu_off_t offset, size_t *nbytes)
{
struct _file_stream *fs = mu_stream_get_owner (stream);
size_t n;
@@ -188,6 +188,8 @@ _file_write (mu_stream_t stream, const char *iptr, size_t isize,
{
if (feof (fs->file) == 0)
err = EIO;
+ else if (n == 0)
+ err = ENOSPC;
clearerr(fs->file);
n = 0;
}

Return to:

Send suggestions and report system problems to the System administrator.