From bcf1bfabdef4481d4748e6c4a82b579af628fd75 Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Thu, 17 Jan 2013 22:44:00 +0100 Subject: statfs: support f_frsize closes bugzilla #5834 Signed-off-by: Bernhard Reutner-Fischer --- libc/misc/statfs/internal_statvfs.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'libc/misc/statfs/internal_statvfs.c') diff --git a/libc/misc/statfs/internal_statvfs.c b/libc/misc/statfs/internal_statvfs.c index 6eb4afe5a..29890d490 100644 --- a/libc/misc/statfs/internal_statvfs.c +++ b/libc/misc/statfs/internal_statvfs.c @@ -18,8 +18,12 @@ /* Now fill in the fields we have information for. */ buf->f_bsize = fsbuf.f_bsize; - /* Linux does not support f_frsize, so set it to the full block size. */ +#ifdef _STATFS_F_FRSIZE + buf->f_frsize = fsbuf.f_frsize; +#else + /* No support for f_frsize so set it to the full block size. */ buf->f_frsize = fsbuf.f_bsize; +#endif buf->f_blocks = fsbuf.f_blocks; buf->f_bfree = fsbuf.f_bfree; buf->f_bavail = fsbuf.f_bavail; @@ -38,7 +42,7 @@ buf->__f_unused = 0; #endif buf->f_namemax = fsbuf.f_namelen; - memset (buf->__f_spare, '\0', 6 * sizeof (int)); + memset (buf->__f_spare, '\0', sizeof(fsbuf.f_spare)); /* What remains to do is to fill the fields f_favail and f_flag. */ -- cgit v1.2.3