Raise a KeyError from bindbapi.aux_get() when appropriate. (trunk r6699)
authorZac Medico <zmedico@gentoo.org>
Fri, 1 Jun 2007 19:14:28 +0000 (19:14 -0000)
committerZac Medico <zmedico@gentoo.org>
Fri, 1 Jun 2007 19:14:28 +0000 (19:14 -0000)
svn path=/main/branches/2.1.2/; revision=6712

pym/portage.py

index c08faf150029d149d6819df15ee59a6ddf77e94d..20ed0569ff2a7bd71a40db90b29e7907b3817dbd 100644 (file)
@@ -4954,9 +4954,12 @@ class bindbapi(fakedbapi):
                mysplit = mycpv.split("/")
                mylist  = []
                tbz2name = mysplit[1]+".tbz2"
-               if self.bintree and not self.bintree.isremote(mycpv):
-                       tbz2 = xpak.tbz2(self.bintree.getname(mycpv))
-                       getitem = tbz2.getfile
+               if not self.bintree.remotepkgs or \
+                       not self.bintree.isremote(mycpv):
+                       tbz2_path = self.bintree.getname(mycpv)
+                       if not os.path.exists(tbz2_path):
+                               raise KeyError(mycpv)
+                       getitem = xpak.tbz2(tbz2_path).getfile
                else:
                        getitem = self.bintree.remotepkgs[tbz2name].get
                mydata = {}