diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-05-30 20:24:08 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-05-30 20:24:08 +0000 |
commit | 05f15f0d6e34cb9a47a3cb3ec44453958f1a3818 (patch) | |
tree | 2c88444cc31e5c529bc6cb86234e63e604d80c66 /pym | |
parent | f41e8022f88a5cfb7030f7aa6a3f28b2e5cfdd6a (diff) | |
download | portage-05f15f0d6e34cb9a47a3cb3ec44453958f1a3818.tar.gz portage-05f15f0d6e34cb9a47a3cb3ec44453958f1a3818.tar.bz2 portage-05f15f0d6e34cb9a47a3cb3ec44453958f1a3818.zip |
Make the use_cache=0 listdir() implementation inside vardbapi.cpv_all()
raise a PermissionDenied error when appropriate. (trunk r10505)
svn path=/main/branches/2.1.2/; revision=10506
Diffstat (limited to 'pym')
-rw-r--r-- | pym/portage.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/pym/portage.py b/pym/portage.py index 812aaaa5a..557d27880 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -6802,7 +6802,10 @@ class vardbapi(dbapi): try: return [x for x in os.listdir(p) \ if os.path.isdir(os.path.join(p, x))] - except EnvironmentError: + except EnvironmentError, e: + if e.errno == portage_exception.PermissionDenied.errno: + raise portage_exception.PermissionDenied(p) + del e return [] for x in listdir(basepath, EmptyOnError=1, ignorecvs=1, dirsonly=1): |