diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py --- a/mercurial/cmdutil.py +++ b/mercurial/cmdutil.py @@ -2290,6 +2290,7 @@ def _updatecatformatter(fm, ctx, matcher if decode: data = ctx.repo().wwritedata(path, data) fm.startitem() + fm.context(ctx=ctx) fm.write('data', '%s', data) fm.data(abspath=path, path=matcher.rel(path)) diff --git a/tests/test-cat.t b/tests/test-cat.t --- a/tests/test-cat.t +++ b/tests/test-cat.t @@ -65,10 +65,10 @@ Test fileset Test template output - $ hg --cwd tmp cat ../b ../c -T '== {path} ({abspath}) ==\n{data}' - == ../b (b) == + $ hg --cwd tmp cat ../b ../c -T '== {path} ({abspath}) r{rev} ==\n{data}' + == ../b (b) r2 == 1 - == ../c (c) == + == ../c (c) r2 == 3 $ hg cat b c -Tjson --output -