diff --git a/hgext/largefiles/overrides.py b/hgext/largefiles/overrides.py --- a/hgext/largefiles/overrides.py +++ b/hgext/largefiles/overrides.py @@ -305,6 +305,9 @@ def overridelog(orig, ui, repo, *pats, * pats = set(p) def fixpats(pat, tostandin=lfutil.standin): + if pat.startswith('set:'): + return pat + kindpat = match_._patsplit(pat, None) if kindpat[0] is not None: diff --git a/tests/test-fileset-generated.t b/tests/test-fileset-generated.t --- a/tests/test-fileset-generated.t +++ b/tests/test-fileset-generated.t @@ -72,6 +72,20 @@ Test log content1_content2_content3-tracked | 1 + 3 files changed, 3 insertions(+), 0 deletions(-) +Largefiles doesn't crash + $ hg log -T '{rev}\n' --stat 'set:modified()' --config extensions.largefiles= + 1 + content1_content2_content1-tracked | 2 +- + content1_content2_content3-tracked | 2 +- + missing_content2_content3-tracked | 1 + + 3 files changed, 3 insertions(+), 2 deletions(-) + + 0 + content1_content1_content3-tracked | 1 + + content1_content2_content1-tracked | 1 + + content1_content2_content3-tracked | 1 + + 3 files changed, 3 insertions(+), 0 deletions(-) + $ hg log -T '{rev}\n' --stat 'set:added()' 1 content1_missing_content1-tracked | 1 - diff --git a/tests/test-largefiles-misc.t b/tests/test-largefiles-misc.t --- a/tests/test-largefiles-misc.t +++ b/tests/test-largefiles-misc.t @@ -37,6 +37,13 @@ Test copies and moves from a directory o A dira/dirb/largefile $ cd dira $ hg cp dirb/largefile foo/largefile + +TODO: Ideally, this should mention the largefile, not the standin + $ hg log -T '{rev}\n' --stat 'set:clean()' + 0 + .hglf/dira/dirb/largefile | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + $ hg ci -m "deep copy" Invoking status precommit hook A dira/foo/largefile