diff options
-rw-r--r-- | pym/emerge/__init__.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/pym/emerge/__init__.py b/pym/emerge/__init__.py index 53a7a99c9..e92df3627 100644 --- a/pym/emerge/__init__.py +++ b/pym/emerge/__init__.py @@ -4140,12 +4140,14 @@ def unmerge(settings, myopts, vartree, unmerge_action, unmerge_files, if "--quiet" not in myopts: 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) |