Skip to content

Commit 5aa4d30

Browse files
committed
json: skip linebreak and indent for empty map,arr.
Signed-off-by: Eric Myhre <hash@exultant.us>
1 parent de33dbb commit 5aa4d30

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

json/jsonEncoder.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,11 @@ func (d *Encoder) Step(tok *Token) (done bool, err error) {
7676
case TArrOpen:
7777
return true, fmt.Errorf("unexpected arrOpen; expected start of key or end of map")
7878
case TMapClose:
79-
d.wr.Write(d.cfg.Line)
80-
for i := 1; i < len(d.stack); i++ {
81-
d.wr.Write(d.cfg.Indent)
79+
if d.some {
80+
d.wr.Write(d.cfg.Line)
81+
for i := 1; i < len(d.stack); i++ {
82+
d.wr.Write(d.cfg.Indent)
83+
}
8284
}
8385
d.wr.Write(wordMapClose)
8486
return d.popPhase()
@@ -135,9 +137,11 @@ func (d *Encoder) Step(tok *Token) (done bool, err error) {
135137
case TMapClose:
136138
return true, fmt.Errorf("unexpected mapClose; expected start of value or end of array")
137139
case TArrClose:
138-
d.wr.Write(d.cfg.Line)
139-
for i := 1; i < len(d.stack); i++ {
140-
d.wr.Write(d.cfg.Indent)
140+
if d.some {
141+
d.wr.Write(d.cfg.Line)
142+
for i := 1; i < len(d.stack); i++ {
143+
d.wr.Write(d.cfg.Indent)
144+
}
141145
}
142146
d.wr.Write(wordArrClose)
143147
return d.popPhase()

0 commit comments

Comments
 (0)