Use Package.cp instead of dep_getkey(cpv).
authorZac Medico <zmedico@gentoo.org>
Wed, 2 Apr 2008 19:09:13 +0000 (19:09 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 2 Apr 2008 19:09:13 +0000 (19:09 -0000)
svn path=/main/trunk/; revision=9680

pym/_emerge/__init__.py

index 55e35330c3a23e293c3c376a25c87338a2495f03..a33929d56d48a9131206731efcb1801411e80817 100644 (file)
@@ -3631,6 +3631,8 @@ class depgraph(object):
                                        mydbapi.aux_get(pkg_key, self._mydbapi_keys)))
                                ebuild_path = None
                                repo_name = metadata["repository"]
+                               built = pkg_type != "ebuild"
+                               installed = pkg_type == "installed"
                                if pkg_type == "ebuild":
                                        ebuild_path = portdb.findname(pkg_key)
                                        if not ebuild_path: # shouldn't happen
@@ -3641,6 +3643,9 @@ class depgraph(object):
                                        metadata["USE"] = pkgsettings["PORTAGE_USE"]
                                else:
                                        repo_path_real = portdb.getRepositoryPath(repo_name)
+                               pkg_node = Package(type_name=pkg_type, root=myroot,
+                                       cpv=pkg_key, built=built, installed=installed,
+                                       metadata=metadata)
                                pkg_use = metadata["USE"].split()
                                try:
                                        restrict = flatten(use_reduce(paren_reduce(
@@ -4785,8 +4790,7 @@ class MergeTask(object):
                                        "--fetch-all-uri" not in self.myopts:
 
                                        # Figure out if we need a restart.
-                                       if myroot == "/" and \
-                                               portage.dep_getkey(pkg_key) == "sys-apps/portage":
+                                       if myroot == "/" and pkg_node.cp == "sys-apps/portage":
                                                if len(mymergelist) > mergecount:
                                                        emergelog(xterm_titles,
                                                                " ::: completed emerge ("+ \