summaryrefslogtreecommitdiffstats
path: root/pym/portage.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2006-03-14 00:38:24 +0000
committerZac Medico <zmedico@gentoo.org>2006-03-14 00:38:24 +0000
commita9fea52d582034973feaf7fe77a5730ab0ab4849 (patch)
treed632a613c609ef7931c088ddcf4eb12ce02ee90d /pym/portage.py
parent556a7562150d7d398b08459f45b98ec961541c6b (diff)
downloadportage-a9fea52d582034973feaf7fe77a5730ab0ab4849.tar.gz
portage-a9fea52d582034973feaf7fe77a5730ab0ab4849.tar.bz2
portage-a9fea52d582034973feaf7fe77a5730ab0ab4849.zip
Add a new OperationNotPermitted exception and use it to wrap apply_permissions exceptions.
svn path=/main/trunk/; revision=2871
Diffstat (limited to 'pym/portage.py')
-rw-r--r--pym/portage.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/pym/portage.py b/pym/portage.py
index a15ec1c0b..ad040dd70 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -1836,14 +1836,14 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0, locks_in_subdir=".locks",
can_fetch=False
else:
def distdir_perms(filename):
+ all_applied = True
try:
- portage_util.apply_secpass_permissions(filename, gid=portage_gid, mode=0775)
- except OSError, oe:
- if oe.errno == errno.EPERM:
- writemsg("!!! Unable to apply group permissions to '%s'. Non-root users may experience issues.\n"
- % filename)
- else:
- raise oe
+ all_applied = portage_util.apply_secpass_permissions(filename, gid=portage_gid, mode=0775)
+ except portage_exceptions.OperationNotPermitted:
+ all_applied = False
+ if not all_applied:
+ writemsg("!!! Unable to apply group permissions to '%s'." + \
+ " Non-root users may experience issues.\n" % filename)
distdir_perms(mysettings["DISTDIR"])
if use_locks and locks_in_subdir:
distlocks_subdir = os.path.join(mysettings["DISTDIR"], locks_in_subdir)