Merge pull request #5263 from uber/b-element-negative

Error out on negative indices in element()
pull/5655/head
James Nugent 10 years ago
commit 87550b2b72

@ -477,7 +477,7 @@ func interpolationFuncElement() ast.Function {
list := StringList(args[0].(string))
index, err := strconv.Atoi(args[1].(string))
if err != nil {
if err != nil || index < 0 {
return "", fmt.Errorf(
"invalid number for index, got %s", args[1])
}

@ -778,6 +778,14 @@ func TestInterpolateFuncElement(t *testing.T) {
false,
},
// Negative number should fail
{
fmt.Sprintf(`${element("%s", "-1")}`,
NewStringList([]string{"foo"}).String()),
nil,
true,
},
// Too many args
{
fmt.Sprintf(`${element("%s", "0", "2")}`,

Loading…
Cancel
Save