Skip to content
Snippets Groups Projects
Commit 4ebc5f325bed authored by Yuya Nishihara's avatar Yuya Nishihara
Browse files

log: fix crash and bad filematcher lookup by -fr'wdir()' PATH

"-fr'wdir()' ADDED-PATH" is still wrong, which will be fixed in default
branch.
parent 81b4e7c866ec
No related branches found
No related tags found
No related merge requests found
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
node, node,
patch, patch,
pycompat, pycompat,
scmutil,
smartset, smartset,
) )
...@@ -90,7 +91,7 @@ ...@@ -90,7 +91,7 @@
visitheap = [] visitheap = []
def addvisit(fctx): def addvisit(fctx):
rev = fctx.rev() rev = scmutil.intrev(fctx)
if rev not in visit: if rev not in visit:
visit[rev] = set() visit[rev] = set()
heapq.heappush(visitheap, -rev) # max heap heapq.heappush(visitheap, -rev) # max heap
......
...@@ -753,7 +753,7 @@ ...@@ -753,7 +753,7 @@
fcache = {} fcache = {}
def filematcher(ctx): def filematcher(ctx):
return scmutil.matchfiles(repo, fcache.get(ctx.rev(), [])) return scmutil.matchfiles(repo, fcache.get(scmutil.intrev(ctx), []))
def revgen(): def revgen():
for rev, cs in dagop.filectxancestors(fctxs, followfirst=followfirst): for rev, cs in dagop.filectxancestors(fctxs, followfirst=followfirst):
......
...@@ -2263,6 +2263,51 @@ ...@@ -2263,6 +2263,51 @@
} }
] ]
follow files from wdir
$ hg cp d1/f1 f1-copy
$ hg stat --all
M d1/f1
A d1/f2
A f1-copy
d1/f1
R .d6/f1
C D2/f1
C D3.i/f1
C d4.hg/f1
C d5.d/f1
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat d5.d/f1
== 2147483647 ==
== 0 ==
d5.d/f1 | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat d1/f1
== 2147483647 ==
d1/f1 | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
== 0 ==
d1/f1 | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
BROKEN: added file should exist in wdir
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat d1/f2
abort: cannot follow nonexistent file: "d1/f2"
[255]
BROKEN: copied file should exist in wdir
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat f1-copy
abort: cannot follow nonexistent file: "f1-copy"
[255]
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat notfound
notfound: $ENOENT$
$ hg revert -aqC $ hg revert -aqC
Check that adding an arbitrary name shows up in log automatically Check that adding an arbitrary name shows up in log automatically
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment