If a package is in the world set but it's not installed, go ahead and install it...
authorZac Medico <zmedico@gentoo.org>
Wed, 20 Jun 2007 05:08:10 +0000 (05:08 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 20 Jun 2007 05:08:10 +0000 (05:08 -0000)
svn path=/main/trunk/; revision=6883

pym/emerge/__init__.py

index 5d7c69615c9c62c5a167c33275f814a8a7f061a8..bf6dd5a361fc23a02459cbf68f8ce420b65ac32c 100644 (file)
@@ -2217,10 +2217,22 @@ class depgraph:
                        for x in worlddict.keys():
                                if not portage.isvalidatom(x):
                                        world_problems = True
-                               elif not self.trees[self.target_root]["vartree"].dbapi.match(x):
-                                       world_problems = True
-                               else:
-                                       mylist.append(x)
+                                       continue
+                               elif not vardb.match(x):
+                                       available = False
+                                       if "--usepkgonly" not in self.myopts and \
+                                               portdb.match(x):
+                                               available = True
+                                       elif "--usepkg" in self.myopts:
+                                               mymatches = bindb.match(x)
+                                               if "--usepkgonly" not in self.myopts:
+                                                       mymatches = visible(mymatches)
+                                               if mymatches:
+                                                       available = True
+                                       if not available:
+                                               world_problems = True
+                                               continue
+                               mylist.append(x)
 
                newlist = []
                for atom in mylist: