summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-03-23 21:08:35 -0700
committerZac Medico <zmedico@gentoo.org>2011-03-23 21:08:35 -0700
commitc4b26e6ece564edd30d612628ea5f3c29b5df120 (patch)
tree3231990f4ca617dd1543ce29eecd071ad02c793c /pym
parent1f8f9438935c11fada771ff64a9fae6a7edfe087 (diff)
downloadportage-c4b26e6ece564edd30d612628ea5f3c29b5df120.tar.gz
portage-c4b26e6ece564edd30d612628ea5f3c29b5df120.tar.bz2
portage-c4b26e6ece564edd30d612628ea5f3c29b5df120.zip
get_dep_chain: handle InvalidDependString
Diffstat (limited to 'pym')
-rw-r--r--pym/_emerge/depgraph.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 6de3d1430..391c845de 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2294,8 +2294,12 @@ class depgraph(object):
if target_atom is not None and isinstance(node, Package):
affecting_use = set()
for dep_str in "DEPEND", "RDEPEND", "PDEPEND":
- affecting_use.update(extract_affecting_use(
- node.metadata[dep_str], target_atom))
+ try:
+ affecting_use.update(extract_affecting_use(
+ node.metadata[dep_str], target_atom))
+ except InvalidDependString:
+ if not node.installed:
+ raise
affecting_use.difference_update(node.use.mask, node.use.force)
pkg_name = _unicode_decode("%s") % (node.cpv,)
if affecting_use: