diff --git a/mercurial/templatekw.py b/mercurial/templatekw.py --- a/mercurial/templatekw.py +++ b/mercurial/templatekw.py @@ -205,7 +205,9 @@ yield separator.join(values) else: for v in values: - yield dict(v, **strmapping) + r = dict(v) + r.update(mapping) + yield r return startname = 'start_' + plural if startname in templ: