tpl: check for too many arguments in apply

Fixes #1091
This commit is contained in:
bep 2015-04-30 11:41:25 +02:00
parent be017f187e
commit be190fdb0d
2 changed files with 5 additions and 1 deletions

View file

@ -668,6 +668,8 @@ func applyFnToThis(fn, this reflect.Value, args ...interface{}) (reflect.Value,
if len(args) < num {
return reflect.ValueOf(nil), errors.New("Too few arguments")
} else if len(args) > num {
return reflect.ValueOf(nil), errors.New("Too many arguments")
}
res := fn.Call(n)

View file

@ -15,7 +15,9 @@ func TestTplGoFuzzReports(t *testing.T) {
// Issue #1089
{"{{apply .C \"first\" }}", 2},
// Issue #1090
{"{{ slicestr \"000000\" 10}}", 2}} {
{"{{ slicestr \"000000\" 10}}", 2},
// Issue #1091
{"{{apply .C \"first\" 0 0 0}}", 2}} {
templ := New()
d := &Data{