--- a/mercurial/templater.py Wed Oct 08 14:16:53 2014 -0700
+++ b/mercurial/templater.py Fri Oct 10 12:15:46 2014 -0500
@@ -330,7 +330,8 @@
# Iterating over items gives a formatted string, so we iterate
# directly over the raw values.
- if item in [i.values()[0] for i in items()]:
+ if ((callable(items) and item in [i.values()[0] for i in items()]) or
+ (isinstance(items, str) and item in items)):
yield _evalifliteral(args[2], context, mapping)
elif len(args) == 4:
yield _evalifliteral(args[3], context, mapping)