Mercurial > public > mercurial-scm > hg
comparison mercurial/cmdutil.py @ 24060:eb1c9700d19d
graphlog: move comment and flag denoting revs might be unsorted
This prepares for extracting common part from getgraphlogrevs() and
getlogrevs(). "possiblyunsorted" exists only in getgraphlogrevs().
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Thu, 05 Feb 2015 23:49:18 +0900 |
parents | 8d295ce6e488 |
children | 4fa72a09c73d |
comparison
equal
deleted
inserted
replaced
24059:8d295ce6e488 | 24060:eb1c9700d19d |
---|---|
1832 """ | 1832 """ |
1833 limit = loglimit(opts) | 1833 limit = loglimit(opts) |
1834 # Default --rev value depends on --follow but --follow behaviour | 1834 # Default --rev value depends on --follow but --follow behaviour |
1835 # depends on revisions resolved from --rev... | 1835 # depends on revisions resolved from --rev... |
1836 follow = opts.get('follow') or opts.get('follow_first') | 1836 follow = opts.get('follow') or opts.get('follow_first') |
1837 possiblyunsorted = False # whether revs might need sorting | |
1838 if opts.get('rev'): | 1837 if opts.get('rev'): |
1839 revs = scmutil.revrange(repo, opts['rev']) | 1838 revs = scmutil.revrange(repo, opts['rev']) |
1840 # Don't sort here because _makelogrevset might depend on the | |
1841 # order of revs | |
1842 possiblyunsorted = True | |
1843 else: | 1839 else: |
1844 if follow and len(repo) > 0: | 1840 if follow and len(repo) > 0: |
1845 revs = repo.revs('reverse(:.)') | 1841 revs = repo.revs('reverse(:.)') |
1846 else: | 1842 else: |
1847 revs = revset.spanset(repo) | 1843 revs = revset.spanset(repo) |
1848 revs.reverse() | 1844 revs.reverse() |
1849 if not revs: | 1845 if not revs: |
1850 return revset.baseset(), None, None | 1846 return revset.baseset(), None, None |
1851 expr, filematcher = _makelogrevset(repo, pats, opts, revs) | 1847 expr, filematcher = _makelogrevset(repo, pats, opts, revs) |
1852 if possiblyunsorted: | 1848 if opts.get('rev'): |
1849 # User-specified revs might be unsorted, but don't sort before | |
1850 # _makelogrevset because it might depend on the order of revs | |
1853 revs.sort(reverse=True) | 1851 revs.sort(reverse=True) |
1854 if expr: | 1852 if expr: |
1855 # Revset matchers often operate faster on revisions in changelog | 1853 # Revset matchers often operate faster on revisions in changelog |
1856 # order, because most filters deal with the changelog. | 1854 # order, because most filters deal with the changelog. |
1857 revs.reverse() | 1855 revs.reverse() |