summaryrefslogtreecommitdiffstats
path: root/pym/portage/__init__.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-11-21 22:32:10 +0000
committerZac Medico <zmedico@gentoo.org>2008-11-21 22:32:10 +0000
commit5b658d893053a5c46531b0d49b3e7b27a0e70ce1 (patch)
tree7c739851ae81834789e345656353c99bca80a954 /pym/portage/__init__.py
parente27b61a3552f6d9266c3d4df9928e468dcfdfe71 (diff)
downloadportage-5b658d893053a5c46531b0d49b3e7b27a0e70ce1.tar.gz
portage-5b658d893053a5c46531b0d49b3e7b27a0e70ce1.tar.bz2
portage-5b658d893053a5c46531b0d49b3e7b27a0e70ce1.zip
Bug #248059 - Make --depclean more tolerant of invalid atoms in dependencies
of packages that will be uninstalled anyway. (trunk r12020) svn path=/main/branches/2.1.6/; revision=12021
Diffstat (limited to 'pym/portage/__init__.py')
-rw-r--r--pym/portage/__init__.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 6c369efbb..b6f5cf8be 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -6601,8 +6601,16 @@ def dep_check(depstring, mydbapi, mysettings, use="yes", mode=None, myuse=None,
writemsg("mysplit: %s\n" % (mysplit), 1)
writemsg("mysplit2: %s\n" % (mysplit2), 1)
- myzaps = dep_zapdeps(mysplit, mysplit2, myroot,
- use_binaries=use_binaries, trees=trees)
+ try:
+ myzaps = dep_zapdeps(mysplit, mysplit2, myroot,
+ use_binaries=use_binaries, trees=trees)
+ except portage.exception.InvalidAtom, e:
+ if portage.dep._dep_check_strict:
+ raise # This shouldn't happen.
+ # dbapi.match() failed due to an invalid atom in
+ # the dependencies of an installed package.
+ return [0, "Invalid atom: '%s'" % (e,)]
+
mylist = flatten(myzaps)
writemsg("myzaps: %s\n" % (myzaps), 1)
writemsg("mylist: %s\n" % (mylist), 1)