# HG changeset patch # User Yuya Nishihara # Date 1427381778 -32400 # Node ID 3eb9045396b08632072bf63033a5bf65334c53f2 # Parent dded1eeeff645e37ae3b6ea1318e3867fd142e9c children: don't pass filectx to displayer displayer doesn't want a fctx but a ctx. It failed with -Tdefault template. Traceback (most recent call last): ... File "mercurial/templatekw.py", line 212, in showbookmarks bookmarks = args['ctx'].bookmarks() AttributeError: 'filectx' object has no attribute 'bookmarks' diff -r dded1eeeff64 -r 3eb9045396b0 hgext/children.py --- a/hgext/children.py Fri Mar 27 15:13:21 2015 -0500 +++ b/hgext/children.py Thu Mar 26 23:56:18 2015 +0900 @@ -39,11 +39,13 @@ """ rev = opts.get('rev') if file_: - ctx = repo.filectx(file_, changeid=rev) + fctx = repo.filectx(file_, changeid=rev) + childctxs = [fcctx.changectx() for fcctx in fctx.children()] else: ctx = repo[rev] + childctxs = ctx.children() displayer = cmdutil.show_changeset(ui, repo, opts) - for cctx in ctx.children(): + for cctx in childctxs: displayer.show(cctx) displayer.close() diff -r dded1eeeff64 -r 3eb9045396b0 tests/test-children.t --- a/tests/test-children.t Fri Mar 27 15:13:21 2015 -0500 +++ b/tests/test-children.t Thu Mar 26 23:56:18 2015 +0900 @@ -122,4 +122,12 @@ summary: 2 +should be compatible with templater (don't pass fctx to displayer) + $ hg children file0 -Tdefault + changeset: 2:8f5eea5023c2 + user: test + date: Thu Jan 01 00:00:02 1970 +0000 + summary: 2 + + $ cd ..