##// END OF EJS Templates
templatekw: fix crash on multiple latesttags resolution at wdir (issue6055)...
Yuya Nishihara -
r41336:66102f6f stable
parent child Browse files
Show More
@@ -81,8 +81,15 b' def getlatesttags(context, mapping, patt'
81 pdate, pdist, ptag = max(ptags)
81 pdate, pdist, ptag = max(ptags)
82 else:
82 else:
83 def key(x):
83 def key(x):
84 changessincetag = len(repo.revs('only(%d, %s)',
84 tag = x[2][0]
85 ctx.rev(), x[2][0]))
85 if ctx.rev() is None:
86 # only() doesn't support wdir
87 prevs = [c.rev() for c in ctx.parents()]
88 changes = repo.revs('only(%ld, %s)', prevs, tag)
89 changessincetag = len(changes) + 1
90 else:
91 changes = repo.revs('only(%d, %s)', ctx.rev(), tag)
92 changessincetag = len(changes)
86 # Smallest number of changes since tag wins. Date is
93 # Smallest number of changes since tag wins. Date is
87 # used as tiebreaker.
94 # used as tiebreaker.
88 return [-changessincetag, x[0]]
95 return [-changessincetag, x[0]]
@@ -1063,8 +1063,18 b' Tags of working-directory parents (issue'
1063 $ hg ci -qAm h3a
1063 $ hg ci -qAm h3a
1064 $ hg merge -q 2
1064 $ hg merge -q 2
1065 $ hg log -Gr'::wdir()' -T "{rev}: {latesttag % '{tag}+{distance},{changes} '}\n"
1065 $ hg log -Gr'::wdir()' -T "{rev}: {latesttag % '{tag}+{distance},{changes} '}\n"
1066 hg: parse error: invalid argument for revspec
1066 o 2147483647: at3+2,3 t3+2,3
1067 [255]
1067 |\
1068 | @ 12: at3+1,1 t3+1,1
1069 | |
1070 | o 3: at3+0,0 t3+0,0
1071 | |
1072 @ | 2: t2+0,0
1073 |/
1074 o 1: t1+0,0
1075 |
1076 o 0: null+1,1
1077
1068
1078
1069 $ hg ci -m merge
1079 $ hg ci -m merge
1070 $ hg log -Gr'::.' -T "{rev}: {latesttag % '{tag}+{distance},{changes} '}\n"
1080 $ hg log -Gr'::.' -T "{rev}: {latesttag % '{tag}+{distance},{changes} '}\n"
General Comments 0
You need to be logged in to leave comments. Login now