Mercurial > public > mercurial-scm > hg
diff mercurial/cmdutil.py @ 41748:980e05204ed8
subrepo: use root-repo-relative path from `hg files` with ui.relative-paths=no
The fix is to pass in a "subuipathfn" as we do everywhere else.
Differential Revision: https://phab.mercurial-scm.org/D5978
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Sun, 17 Feb 2019 09:12:30 -0800 |
parents | b81ecf3571d5 |
children | aaad36b88298 |
line wrap: on
line diff
--- a/mercurial/cmdutil.py Sun Feb 17 09:05:28 2019 -0800 +++ b/mercurial/cmdutil.py Sun Feb 17 09:12:30 2019 -0800 @@ -2171,11 +2171,10 @@ forgot.extend(f for f in forget if f not in rejected) return bad, forgot -def files(ui, ctx, m, fm, fmt, subrepos): +def files(ui, ctx, m, uipathfn, fm, fmt, subrepos): ret = 1 needsfctx = ui.verbose or {'size', 'flags'} & fm.datahint() - uipathfn = scmutil.getuipathfn(ctx.repo(), legacyrelativevalue=True) for f in ctx.matches(m): fm.startitem() fm.context(ctx=ctx) @@ -2188,11 +2187,13 @@ for subpath in sorted(ctx.substate): submatch = matchmod.subdirmatcher(subpath, m) + subuipathfn = scmutil.subdiruipathfn(subpath, uipathfn) if (subrepos or m.exact(subpath) or any(submatch.files())): sub = ctx.sub(subpath) try: recurse = m.exact(subpath) or subrepos - if sub.printfiles(ui, submatch, fm, fmt, recurse) == 0: + if sub.printfiles(ui, submatch, subuipathfn, fm, fmt, + recurse) == 0: ret = 0 except error.LookupError: ui.status(_("skipping missing subrepository: %s\n")