diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-07-17 05:00:31 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-07-17 05:00:31 +0000 |
commit | 30ff6e2379302534a2b981f2a89bd3082d6e08ba (patch) | |
tree | b64d49cf8d8860aab748fc0f0bc6c283a1727b45 | |
parent | 80b1a89858fd99250f1884987c8cd2457419d198 (diff) | |
download | portage-30ff6e2379302534a2b981f2a89bd3082d6e08ba.tar.gz portage-30ff6e2379302534a2b981f2a89bd3082d6e08ba.tar.bz2 portage-30ff6e2379302534a2b981f2a89bd3082d6e08ba.zip |
When dep_expand throws a ValueError due to an ambiguous atom, try to expand the atom again. (trunk r7292)
svn path=/main/branches/2.1.2/; revision=7293
-rwxr-xr-x | bin/emerge | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/bin/emerge b/bin/emerge index 5e9f1a801..29753fc36 100755 --- a/bin/emerge +++ b/bin/emerge @@ -1496,6 +1496,7 @@ class depgraph: "given a list of .tbz2s, .ebuilds and deps, create the appropriate depgraph and return a favorite list" myfavorites=[] myroot = self.target_root + vardb = self.trees[myroot]["vartree"].dbapi portdb = self.trees[myroot]["porttree"].dbapi bindb = self.trees[myroot]["bintree"].dbapi pkgsettings = self.pkgsettings[myroot] @@ -1575,13 +1576,19 @@ class depgraph: if "--usepkg" in self.myopts: mykey = portage.dep_expand(x, mydb=bindb, settings=pkgsettings) - if (mykey and not mykey.startswith("null/")) or \ - "--usepkgonly" in self.myopts: + if "--usepkgonly" in self.myopts or \ + (mykey and not portage.dep_getkey(mykey).startswith("null/")): arg_atoms.append((x, mykey)) continue - mykey = portage.dep_expand(x, - mydb=portdb, settings=pkgsettings) + try: + mykey = portage.dep_expand(x, + mydb=portdb, settings=pkgsettings) + except ValueError: + mykey = portage.dep_expand(x, + mydb=vardb, settings=pkgsettings) + if portage.dep_getkey(mykey).startswith("null/"): + raise arg_atoms.append((x, mykey)) except ValueError, errpkgs: print "\n\n!!! The short ebuild name \"" + x + "\" is ambiguous. Please specify" |