From c2bdf3c25adf23444794e358ec0cfda3ecd882de Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 30 Apr 2009 07:29:25 +0000 Subject: [PATCH] Bug #267104 - If the statvfs f_bavail field shows insufficient free space and userfetch is not enabled, recalculate using the f_bfree field. (trunk r13406) svn path=/main/branches/2.1.6/; revision=13546 --- pym/portage/__init__.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 6ed19bb78..632ed71cb 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -3937,8 +3937,15 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0, locks_in_subdir=".locks", mysize = 0 if (size - mysize + vfs_stat.f_bsize) >= \ (vfs_stat.f_bsize * vfs_stat.f_bavail): - writemsg("!!! Insufficient space to store %s in %s\n" % (myfile, mysettings["DISTDIR"]), noiselevel=-1) - has_space = False + if 'userfetch' in features: + has_space = False + elif (size - mysize + vfs_stat.f_bfree) >= \ + (vfs_stat.f_bfree * vfs_stat.f_bavail): + has_space = False + + if not has_space: + writemsg("!!! Insufficient space to store %s in %s\n" % \ + (myfile, mysettings["DISTDIR"]), noiselevel=-1) if distdir_writable and use_locks: -- 2.26.2