For bug #189219, use pkgcmp() to sort versions in selected/protected/omitted unmerge... v2.1.2.12
authorZac Medico <zmedico@gentoo.org>
Fri, 17 Aug 2007 18:19:02 +0000 (18:19 -0000)
committerZac Medico <zmedico@gentoo.org>
Fri, 17 Aug 2007 18:19:02 +0000 (18:19 -0000)
svn path=/main/branches/2.1.2.9/; revision=7641

bin/emerge

index 5396c3dcbd371caecf9fd8e63bcda5f61ba502d6..a681ca0e842091dc5418203625137ad8d6e6283a 100755 (executable)
@@ -3668,12 +3668,14 @@ def unmerge(settings, myopts, vartree, unmerge_action, unmerge_files,
                for mytype in ["selected","protected","omitted"]:
                        portage.writemsg_stdout((mytype + ": ").rjust(14), noiselevel=-1)
                        if pkgmap[x][mytype]:
-                               for mypkg in pkgmap[x][mytype]:
-                                       mysplit=portage.catpkgsplit(mypkg)
-                                       if mysplit[3]=="r0":
-                                               myversion=mysplit[2]
+                               sorted_pkgs = [portage.catpkgsplit(mypkg)[1:] \
+                                       for mypkg in pkgmap[x][mytype]]
+                               sorted_pkgs.sort(portage.pkgcmp)
+                               for pn, ver, rev in sorted_pkgs:
+                                       if rev == "r0":
+                                               myversion = ver
                                        else:
-                                               myversion=mysplit[2]+"-"+mysplit[3]
+                                               myversion = ver + "-" + rev
                                        if mytype=="selected":
                                                portage.writemsg_stdout(
                                                        colorize("UNMERGE_WARN", myversion + " "), noiselevel=-1)