Comments
Patch
@@ -575,6 +575,9 @@ def pad(context, mapping, args):
fillchar = ' '
if len(args) > 2:
fillchar = evalstring(context, mapping, args[2])
+ if len(fillchar) != 1:
+ # i18n: "pad" is a keyword
+ raise error.ParseError(_("pad() expects a single fill character"))
if len(args) > 3:
left = evalboolean(context, mapping, args[3])
@@ -3521,6 +3521,15 @@ Test width argument passed to pad functi
hg: parse error: pad() expects an integer width
[255]
+Test invalid fillchar passed to pad function
+
+ $ hg log -r 0 -T '{pad(rev, 10, "")}\n'
+ hg: parse error: pad() expects a single fill character
+ [255]
+ $ hg log -r 0 -T '{pad(rev, 10, "--")}\n'
+ hg: parse error: pad() expects a single fill character
+ [255]
+
Test boolean argument passed to pad function
no crash