# HG changeset patch # User Lucas Moscovicz # Date 1394822117 25200 # Node ID e7833e63bb4245069172ee7c457aae1be20937b3 # Parent cfd03c069e082fec71bf403462daf612cf522c63 cmdutil: changed code in _makegraphlogrevset 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. diff -r cfd03c069e08 -r e7833e63bb42 mercurial/cmdutil.py --- a/mercurial/cmdutil.py Fri Mar 14 08:43:52 2014 -0700 +++ b/mercurial/cmdutil.py Fri Mar 14 11:35:17 2014 -0700 @@ -1515,8 +1515,12 @@ follow = opts.get('follow') or opts.get('follow_first') followfirst = opts.get('follow_first') and 1 or 0 # --follow with FILE behaviour depends on revs... - startrev = revs[0] - followdescendants = (len(revs) > 1 and revs[0] < revs[1]) and 1 or 0 + it = iter(revs) + startrev = it.next() + try: + followdescendants = startrev < it.next() + except (StopIteration): + followdescendants = False # branch and only_branch are really aliases and must be handled at # the same time