cmdutil: changed code in getgraphlogrevs not to use getitem
__getitem__ is a method that is not implemented lazily on many of the new
classes and it can be easily replaced with a structure that takes advantage of
the new lazy implementations instead.
--- a/mercurial/cmdutil.py Tue Feb 18 11:35:03 2014 -0800
+++ b/mercurial/cmdutil.py Fri Mar 14 08:43:52 2014 -0700
@@ -1661,7 +1661,12 @@
revs = matcher(repo, revs)
revs.sort(reverse=True)
if limit is not None:
- revs = revs[:limit]
+ limitedrevs = revset.baseset()
+ for idx, rev in enumerate(revs):
+ if idx >= limit:
+ break
+ limitedrevs.append(rev)
+ revs = limitedrevs
return revs, expr, filematcher