Process header/body in one call

This commit is contained in:
Asim Aslam
2018-12-31 17:53:16 +00:00
parent dcf7a56f9b
commit 386ced576a
2 changed files with 12 additions and 15 deletions

View File

@@ -68,7 +68,8 @@ func (r *rpcStream) Recv(msg interface{}) error {
}
var resp response
if err := r.codec.ReadResponseHeader(&resp); err != nil {
if err := r.codec.ReadResponse(&resp, msg); err != nil {
if err == io.EOF && !r.isClosed() {
r.err = io.ErrUnexpectedEOF
return io.ErrUnexpectedEOF
@@ -87,13 +88,6 @@ func (r *rpcStream) Recv(msg interface{}) error {
} else {
r.err = io.EOF
}
if err := r.codec.ReadResponseBody(nil); err != nil {
r.err = err
}
default:
if err := r.codec.ReadResponseBody(msg); err != nil {
r.err = err
}
}
return r.err