Skip to content

Commit 97fab91

Browse files
authored
Merge pull request #203 from Mido-sys/bugfix/issue202
fix: issue#202
2 parents b5fbb50 + a538100 commit 97fab91

2 files changed

Lines changed: 17 additions & 2 deletions

File tree

plush.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,13 @@ func BuffaloRenderer(input string, data map[string]interface{}, helpers map[stri
4444
for k, v := range helpers {
4545
data[k] = v
4646
}
47-
48-
return t.Exec(NewContextWith(data))
47+
gs := NewContextWith(data)
48+
defer func() {
49+
for k := range gs.data.localInterner.stringToID {
50+
data[k] = gs.Value(k)
51+
}
52+
}()
53+
return t.Exec(gs)
4954
}
5055

5156
// Parse an input string and return a Template, and caches the parsed template.

plush_test.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,16 @@ func Test_BuffaloRenderer(t *testing.T) {
119119
r.Equal("GeorgeRingo", s)
120120
}
121121

122+
func Test_BuffaloRenderer_Data_Persistence(t *testing.T) {
123+
r := require.New(t)
124+
input := `<%= contentFor("name") { %>MD<% } %>`
125+
data := map[string]interface{}{}
126+
s, err := plush.BuffaloRenderer(input, data, map[string]interface{}{})
127+
r.NoError(err)
128+
r.Empty(s)
129+
r.Contains(data, "contentFor:name")
130+
}
131+
122132
func Test_Helper_Nil_Arg(t *testing.T) {
123133
r := require.New(t)
124134
input := `<%= foo(nil, "k") %><%= foo(one, "k") %>`

0 commit comments

Comments
 (0)