diff mercurial/templater.py @ 20857:6eb55310fcbc stable

templater: raise error for unknown func Previously, if a template '{foo()}' was given, the buildfunc would not be able to match it and hit a code path that would not return so it would error out later in the templater stating that NoneType was not iterable. This patch makes sure that a proper error is raised so that the user can be informed. Tests have been updated.
author Sean Farley <sean.michael.farley@gmail.com>
date Thu, 27 Mar 2014 17:21:27 -0500
parents 5ab28a2e9962
children 81d6dc8c3c63
line wrap: on
line diff
--- a/mercurial/templater.py	Fri Mar 07 14:06:52 2014 -0500
+++ b/mercurial/templater.py	Thu Mar 27 17:21:27 2014 -0500
@@ -212,6 +212,7 @@
             raise error.ParseError(_("filter %s expects one argument") % n)
         f = context._filters[n]
         return (runfilter, (args[0][0], args[0][1], f))
+    raise error.ParseError(_("unknown function '%s'") % n)
 
 def date(context, mapping, args):
     if not (1 <= len(args) <= 2):