Bug #195370 - Filter some more bogus matches due to
authorZac Medico <zmedico@gentoo.org>
Fri, 12 Oct 2007 22:36:05 +0000 (22:36 -0000)
committerZac Medico <zmedico@gentoo.org>
Fri, 12 Oct 2007 22:36:05 +0000 (22:36 -0000)
old-style virtuals. (trunk r8093)

svn path=/main/branches/2.1.2/; revision=8094

bin/emerge

index 274f2ffbdae308e444697fde6d7f035b9da5194a..6ce75d5c5ef0816ba73462aebec2928b6f3df6c8 100755 (executable)
@@ -2950,12 +2950,16 @@ class depgraph:
                                #we need to use "--emptrytree" testing here rather than "empty" param testing because "empty"
                                #param is used for -u, where you still *do* want to see when something is being upgraded.
                                myoldbest=""
+                               installed_versions = vardb.match(portage.cpv_getkey(pkg_key))
                                if vardb.cpv_exists(pkg_key):
                                        addl="  "+yellow("R")+fetch+"  "
                                        if x[3] != "nomerge":
                                                if ordered:
                                                        counters.reinst += 1
-                               elif vardb.match(portage.dep_getkey(pkg_key)):
+                               # filter out old-style virtual matches
+                               elif installed_versions and \
+                                       portage.cpv_getkey(installed_versions[0]) == \
+                                       portage.cpv_getkey(pkg_key):
                                        mynewslot = mydbapi.aux_get(pkg_key, ["SLOT"])[0]
                                        slot_atom = "%s:%s" % \
                                                (portage.cpv_getkey(pkg_key), mynewslot)