THRIFT-2884 Map does not serialize correctly for JSON protocol in Go library
Client: Go
Patch: Liangliang He <lliang.he@gmail.com>
This closes #312
diff --git a/lib/go/thrift/json_protocol.go b/lib/go/thrift/json_protocol.go
index 78348ec..bd89cb0 100644
--- a/lib/go/thrift/json_protocol.go
+++ b/lib/go/thrift/json_protocol.go
@@ -134,10 +134,16 @@
if e := p.WriteString(s); e != nil {
return e
}
- return p.WriteI64(int64(size))
+ if e := p.WriteI64(int64(size)); e != nil {
+ return e
+ }
+ return p.OutputObjectBegin()
}
func (p *TJSONProtocol) WriteMapEnd() error {
+ if e := p.OutputObjectEnd(); e != nil {
+ return e
+ }
return p.OutputListEnd()
}