mercurial/logcmdutil.py
changeset 45563 142f0dcf90d0
parent 45473 5f0eeda2005d
child 45564 a717de1cb624
equal deleted inserted replaced
45562:b51167d70f5a 45563:142f0dcf90d0
   896         def filematcher(ctx):
   896         def filematcher(ctx):
   897             return match
   897             return match
   898 
   898 
   899     expr = _makerevset(repo, match, pats, slowpath, opts)
   899     expr = _makerevset(repo, match, pats, slowpath, opts)
   900     if opts.get(b'graph'):
   900     if opts.get(b'graph'):
   901         # User-specified revs might be unsorted, but don't sort before
       
   902         # _makerevset because it might depend on the order of revs
       
   903         if repo.ui.configbool(b'experimental', b'log.topo'):
   901         if repo.ui.configbool(b'experimental', b'log.topo'):
   904             if not revs.istopo():
   902             if not revs.istopo():
   905                 revs = dagop.toposort(revs, repo.changelog.parentrevs)
   903                 revs = dagop.toposort(revs, repo.changelog.parentrevs)
   906                 # TODO: try to iterate the set lazily
   904                 # TODO: try to iterate the set lazily
   907                 revs = revset.baseset(list(revs), istopo=True)
   905                 revs = revset.baseset(list(revs), istopo=True)
   908         elif not (revs.isdescending() or revs.istopo()):
   906         elif not (revs.isdescending() or revs.istopo()):
       
   907             # User-specified revs might be unsorted
   909             revs.sort(reverse=True)
   908             revs.sort(reverse=True)
   910     if expr:
   909     if expr:
   911         matcher = revset.match(None, expr)
   910         matcher = revset.match(None, expr)
   912         revs = matcher(repo, revs)
   911         revs = matcher(repo, revs)
   913     if limit is not None:
   912     if limit is not None: