Mercurial > hg-stable
changeset 37107:7db3c28dfdfd
formatter: port handling of 'originalnode' to populatemap() hook
This isn't a pure templating business, so let's move out of the templater
module.
Note that this works only in web templates where mapping['node'] is a static
value.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 17 Mar 2018 17:41:07 +0900 |
parents | be3f33f5e232 |
children | e7bc0667c521 |
files | mercurial/formatter.py mercurial/templateutil.py |
diffstat | 2 files changed, 2 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/formatter.py Thu Mar 15 21:52:47 2018 +0900 +++ b/mercurial/formatter.py Sat Mar 17 17:41:07 2018 +0900 @@ -514,6 +514,8 @@ mapping = {} if self._hasctx(newmapping): mapping['revcache'] = {} # per-ctx cache + if 'node' in origmapping and 'node' in newmapping: + mapping['originalnode'] = origmapping['node'] return mapping def _getsome(self, context, mapping, key):
--- a/mercurial/templateutil.py Thu Mar 15 21:52:47 2018 +0900 +++ b/mercurial/templateutil.py Sat Mar 17 17:41:07 2018 +0900 @@ -406,7 +406,6 @@ if isinstance(v, dict): lm = context.overlaymap(mapping, v) lm['index'] = i - lm['originalnode'] = mapping.get('node') yield evalrawexp(context, lm, targ) else: # v is not an iterable of dicts, this happen when 'key'