templater: shorten pure integers

Originally, the addition of the 'shorten' template function in 83d773060c28
would not consider pure integers for shortening. This patch considers two
simple cases: when the integer starts with zero (which is parsed by Mercurial
as a hash first) and when the integer is larger than the tip (obviously not a
rev).
This commit is contained in:
Sean Farley 2014-02-20 00:46:13 -06:00
parent e97b3cbf9e
commit 4e69c94634

View File

@ -416,7 +416,12 @@ def shortest(context, mapping, args):
return False
try:
int(test)
i = int(test)
# if we are a pure int, then starting with zero will not be
# confused as a rev; or, obviously, if the int is larger than
# the value of the tip rev
if test[0] == '0' or i > len(cl):
return True
return False
except ValueError:
return True