diff options
author | Martin Kühne <mysatyre@gmail.com> | 2016-10-11 18:36:17 +0200 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2016-10-12 19:48:29 +1000 |
commit | 8c55c0096c355e973ce6111cb25a1c4fa05953cf (patch) | |
tree | 7a1d0d885d1b1c8c0646e0beeb52438ab9428ee9 | |
parent | ad27aa30fbcac7a07586072d29d3db50009994e9 (diff) | |
download | pacman-8c55c0096c355e973ce6111cb25a1c4fa05953cf.tar.xz |
Use f_bavail for diskspace calculations
This should make pacman's behavior consistent with GNU coreutils df,
as well as follow advice from affected filesystems' devs as well as
`man statvfs`.
This fixes FS#37402
Signed-off-by: Martin Kühne <mysatyre@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | lib/libalpm/diskspace.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/libalpm/diskspace.c b/lib/libalpm/diskspace.c index da4ad560..55343c16 100644 --- a/lib/libalpm/diskspace.c +++ b/lib/libalpm/diskspace.c @@ -348,11 +348,11 @@ static int check_mountpoint(alpm_handle_t *handle, alpm_mountpoint_t *mp) _alpm_log(handle, ALPM_LOG_DEBUG, "partition %s, needed %jd, cushion %ju, free %ju\n", mp->mount_dir, (intmax_t)mp->max_blocks_needed, - (uintmax_t)cushion, (uintmax_t)mp->fsp.f_bfree); - if(needed >= 0 && (fsblkcnt_t)needed > mp->fsp.f_bfree) { + (uintmax_t)cushion, (uintmax_t)mp->fsp.f_bavail); + if(needed >= 0 && (fsblkcnt_t)needed > mp->fsp.f_bavail) { _alpm_log(handle, ALPM_LOG_ERROR, _("Partition %s too full: %jd blocks needed, %ju blocks free\n"), - mp->mount_dir, (intmax_t)needed, (uintmax_t)mp->fsp.f_bfree); + mp->mount_dir, (intmax_t)needed, (uintmax_t)mp->fsp.f_bavail); return 1; } return 0; |