gobuffalo / plush

The powerful template system that Go needs
MIT License
895 stars 57 forks source link

Panic when passing a hash variable with a syntax error to a function #142

Closed Mido-sys closed 2 years ago

Mido-sys commented 3 years ago

Code panics when I try to create a select input tag with a syntax error

 <%= f.SelectTag("SelectName", {options: {"one": 1, "two": 2}) %>

2021/07/21 06:01:04 http: panic serving 127.0.0.1:39548: runtime error: invalid memory address or nil pointer dereference
goroutine 112 [running]:
net/http.(*conn).serve.func1(0xc002000460)
        /usr/local/go/src/net/http/server.go:1824 +0x153
panic(0xf2e4a0, 0x181de70)
        /usr/local/go/src/runtime/panic.go:971 +0x499
github.com/gobuffalo/plush/v4/ast.(*CallExpression).String(0xc0027cfab0, 0x10888bf, 0x4)
        /home/mido/go/pkg/mod/github.com/gobuffalo/plush/v4@v4.1.5/ast/call_expression.go:26 +0xb0
github.com/gobuffalo/plush/v4/ast.(*ReturnStatement).String(0xc0024eac30, 0xc002692580, 0xf)
        /home/mido/go/pkg/mod/github.com/gobuffalo/plush/v4@v4.1.5/ast/return_statement.go:31 +0x166
Mido-sys commented 3 years ago

Fixed in #143