formatter: reorder code that builds template mapping
authorYuya Nishihara <yuya@tcha.org>
Sun, 02 Apr 2017 22:43:18 +0900
changeset 31805 dca9b6922514
parent 31804 726f24123f02
child 31806 8f203b491bb5
formatter: reorder code that builds template mapping This makes the future patch slightly simpler.
mercurial/formatter.py
--- a/mercurial/formatter.py	Sun Apr 02 18:40:13 2017 -0700
+++ b/mercurial/formatter.py	Sun Apr 02 22:43:18 2017 +0900
@@ -347,16 +347,16 @@
         # TODO: add support for filectx. probably each template keyword or
         # function will have to declare dependent resources. e.g.
         # @templatekeyword(..., requires=('ctx',))
+        props = {}
         if 'ctx' in self._item:
-            props = templatekw.keywords.copy()
-            # explicitly-defined fields precede templatekw
-            props.update(self._item)
+            props.update(templatekw.keywords)
+        # explicitly-defined fields precede templatekw
+        props.update(self._item)
+        if 'ctx' in self._item:
             # but template resources must be always available
             props['templ'] = self._t
             props['repo'] = props['ctx'].repo()
             props['revcache'] = {}
-        else:
-            props = self._item
         g = self._t(self._topic, ui=self._ui, cache=self._cache, **props)
         self._out.write(templater.stringify(g))