Mercurial > public > mercurial-scm > hg
comparison mercurial/commands.py @ 37776:141017c7f7a9
log: fix crash on empty revision with --copies switch
If a revset is empty, .max() raises ValueError.
I don't see any reason to recompute the revs, so I made it reuse the one
returned by logcmdutil.getrevs(). If no revs specified by command line,
the endrev will be smartset.spanset(repo) + 1, which is basically the same
as len(repo), the default of getrenamedfn(). If --follow specified,
revs.max() points to the working parent, which seems more correct.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Fri, 13 Apr 2018 23:45:07 +0900 |
parents | 6a7ff5816c5f |
children | f10cb49951e1 |
comparison
equal
deleted
inserted
replaced
37775:03d7f885d5f2 | 37776:141017c7f7a9 |
---|---|
3475 revs, differ = logcmdutil.getlinerangerevs(repo, revs, opts) | 3475 revs, differ = logcmdutil.getlinerangerevs(repo, revs, opts) |
3476 | 3476 |
3477 getrenamed = None | 3477 getrenamed = None |
3478 if opts.get('copies'): | 3478 if opts.get('copies'): |
3479 endrev = None | 3479 endrev = None |
3480 if opts.get('rev'): | 3480 if revs: |
3481 endrev = scmutil.revrange(repo, opts.get('rev')).max() + 1 | 3481 endrev = revs.max() + 1 |
3482 getrenamed = templatekw.getrenamedfn(repo, endrev=endrev) | 3482 getrenamed = templatekw.getrenamedfn(repo, endrev=endrev) |
3483 | 3483 |
3484 ui.pager('log') | 3484 ui.pager('log') |
3485 displayer = logcmdutil.changesetdisplayer(ui, repo, opts, differ, | 3485 displayer = logcmdutil.changesetdisplayer(ui, repo, opts, differ, |
3486 buffered=True) | 3486 buffered=True) |