From c701c38e136576b75ec771c311d66c19c149b386 Mon Sep 17 00:00:00 2001 From: Rob Pike Date: Mon, 12 Apr 2010 17:14:28 -0700 Subject: [PATCH] fixes for rpc: - don't log normal EOF - fix ServeConn to block as documented R=rsc, msolo CC=golang-dev https://golang.org/cl/886043 --- src/pkg/rpc/server.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pkg/rpc/server.go b/src/pkg/rpc/server.go index fa013f1632..413f9a59ac 100644 --- a/src/pkg/rpc/server.go +++ b/src/pkg/rpc/server.go @@ -313,7 +313,9 @@ func (server *serverType) input(conn io.ReadWriteCloser) { err := dec.Decode(req) if err != nil { if err == os.EOF || err == io.ErrUnexpectedEOF { - log.Stderr("rpc: ", err) + if err == io.ErrUnexpectedEOF { + log.Stderr("rpc: ", err) + } break } s := "rpc: server cannot decode request: " + err.String() @@ -377,7 +379,7 @@ func Register(rcvr interface{}) os.Error { return server.register(rcvr) } // ServeConn runs the server on a single connection. When the connection // completes, service terminates. ServeConn blocks; the caller typically // invokes it in a go statement. -func ServeConn(conn io.ReadWriteCloser) { go server.input(conn) } +func ServeConn(conn io.ReadWriteCloser) { server.input(conn) } // Accept accepts connections on the listener and serves requests // for each incoming connection. Accept blocks; the caller typically -- 2.50.0