summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorArve Hjønnevåg <arve@android.com>2009-05-06 17:37:10 -0700
committerArve Hjønnevåg <arve@android.com>2010-02-08 15:09:09 -0800
commit567940aa0a576440a6f64b8bb2517c378f6b6886 (patch)
treeb1e70e894ea905ee7a3e82f3b6ead42032534e85 /fs
parenta660ce8105791a9ef6b4cf4836cac073c8736442 (diff)
yaffs: Fix yaffs_file_write to not return -ENOSPC when there is nothing to write
yaffs_write_end may get called with copied == 0 if the requested write was interrupted by a signal, but user-space will not restart the write if -ENOSPC is returned. Signed-off-by: Arve Hjønnevåg <arve@android.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/yaffs2/yaffs_fs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/yaffs2/yaffs_fs.c b/fs/yaffs2/yaffs_fs.c
index 30ae7c7e259a..2288eeee2d77 100644
--- a/fs/yaffs2/yaffs_fs.c
+++ b/fs/yaffs2/yaffs_fs.c
@@ -1075,7 +1075,7 @@ static ssize_t yaffs_file_write(struct file *f, const char *buf, size_t n,
}
yaffs_GrossUnlock(dev);
- return nWritten == 0 ? -ENOSPC : nWritten;
+ return (!nWritten && n) ? -ENOSPC : nWritten;
}
/* Space holding and freeing is done to ensure we have space available for write_begin/end */