Handle invalid atoms inside depgraph._add_pkg_deps(), to avoid an
authorZac Medico <zmedico@gentoo.org>
Sun, 29 Jun 2008 06:46:13 +0000 (06:46 -0000)
committerZac Medico <zmedico@gentoo.org>
Sun, 29 Jun 2008 06:46:13 +0000 (06:46 -0000)
unhandled InvalidAtom exception from dep_expand() when matching
against the vardb.

svn path=/main/trunk/; revision=10844

pym/_emerge/__init__.py

index 4929288f36ecdd6123bebb369c55e582e129171b..6bafb5276f891f531ffc73316102c6ce26679be2 100644 (file)
@@ -2749,6 +2749,13 @@ class depgraph(object):
                                if debug:
                                        print "Candidates:", selected_atoms
                                for atom in selected_atoms:
+                                       if isinstance(atom, basestring) \
+                                               and not portage.isvalidatom(atom):
+                                               show_invalid_depstring_notice(
+                                                       pkg, dep_string, str(atom))
+                                               if not pkg.installed:
+                                                       return 0
+                                               continue
                                        blocker = atom.startswith("!")
                                        if blocker:
                                                atom = atom[1:]