Match blockers against the correct $ROOT for bug #108449.
authorZac Medico <zmedico@gentoo.org>
Wed, 5 Jul 2006 03:41:50 +0000 (03:41 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 5 Jul 2006 03:41:50 +0000 (03:41 -0000)
svn path=/main/trunk/; revision=3787

bin/emerge

index 610ec50f8909c0a416472b4d939525daf2edfd05..f0895592e615832a43ef36e4f18cb12a3ab69dd3 100755 (executable)
@@ -684,10 +684,12 @@ class depgraph:
                        """ We ignore blocks unless the package that is blocked is installed
                            We need to check vardbapi as well as the current depgraph for it.
                            Blocks are fatal if buildpkgonly is set. """
-                       if addme and "--buildpkgonly" not in self.myopts and myparent and \
-                               (self.mydbapi[myroot].match(mykey) or vardbapi.match(mykey)):
-                               mybigkey.append(myparent.split()[2])
-                               self.digraph.addnode(string.join(mybigkey),myparent)
+                       if addme and "--buildpkgonly" not in self.myopts and myparent:
+                               parent_root = myparent.split()[1]
+                               if self.mydbapi[parent_root].match(mykey) or \
+                                       self.trees[parent_root]["vartree"].dbapi.match(mykey):
+                                       mybigkey.append(myparent.split()[2])
+                                       self.digraph.addnode(" ".join(mybigkey), myparent)
                        return 1
 
                if myuse is None: