diff mercurial/cmdutil.py @ 30003:46825334f270

graphlog: preserve topo sort even if additional filter options specified Use ordered=revset.followorder instead. This change is logically the same as fa5e4f58dfbc.
author Yuya Nishihara <yuya@tcha.org>
date Thu, 22 Sep 2016 20:53:53 +0900
parents e824de573112
children 5aaa3d6b7e92
line wrap: on
line diff
--- a/mercurial/cmdutil.py	Thu Sep 22 21:52:00 2016 +0900
+++ b/mercurial/cmdutil.py	Thu Sep 22 20:53:53 2016 +0900
@@ -2155,12 +2155,9 @@
         # Revset matchers often operate faster on revisions in changelog
         # order, because most filters deal with the changelog.
         revs.reverse()
-        matcher = revset.match(repo.ui, expr)
-        # Revset matches can reorder revisions. "A or B" typically returns
-        # returns the revision matching A then the revision matching B. Sort
-        # again to fix that.
+        matcher = revset.match(repo.ui, expr, order=revset.followorder)
         revs = matcher(repo, revs)
-        revs.sort(reverse=True)
+        revs.reverse()
     if limit is not None:
         limitedrevs = []
         for idx, rev in enumerate(revs):