comparison mercurial/cmdutil.py @ 22806:65ccc733d58e

getlogrevs: remove user of baseset.append A `baseset` has multiple cached results and will get even more in the future. Making it an object "populated once" like the other smartsets makes it both safer and simpler. The append method will be removed at some point.
author Pierre-Yves David <pierre-yves.david@fb.com>
date Tue, 07 Oct 2014 00:04:16 -0700
parents 55dcc7fb731c
children cd43195ef876
comparison
equal deleted inserted replaced
22805:e74245b79901 22806:65ccc733d58e
1899 revs = matcher(repo, revs) 1899 revs = matcher(repo, revs)
1900 if not opts.get('rev'): 1900 if not opts.get('rev'):
1901 revs.sort(reverse=True) 1901 revs.sort(reverse=True)
1902 if limit is not None: 1902 if limit is not None:
1903 count = 0 1903 count = 0
1904 limitedrevs = revset.baseset([]) 1904 limitedrevs = []
1905 it = iter(revs) 1905 it = iter(revs)
1906 while count < limit: 1906 while count < limit:
1907 try: 1907 try:
1908 limitedrevs.append(it.next()) 1908 limitedrevs.append(it.next())
1909 except (StopIteration): 1909 except (StopIteration):
1910 break 1910 break
1911 count += 1 1911 count += 1
1912 revs = limitedrevs 1912 revs = revset.baseset(limitedrevs)
1913 1913
1914 return revs, expr, filematcher 1914 return revs, expr, filematcher
1915 1915
1916 def displaygraph(ui, dag, displayer, showparents, edgefn, getrenamed=None, 1916 def displaygraph(ui, dag, displayer, showparents, edgefn, getrenamed=None,
1917 filematcher=None): 1917 filematcher=None):