summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2010-04-12 17:14:28 -0700
committerRob Pike <r@golang.org>2010-04-12 17:14:28 -0700
commit929efc17e2d4086afc1957b1b2f8b47d0d16d54f (patch)
tree0133dabb9833f4376ae9960f9cdc42840981d094 /src
parent22ccd9d4a41e63b10160cb21c39d38b63e333533 (diff)
downloadgolang-929efc17e2d4086afc1957b1b2f8b47d0d16d54f.tar.gz
fixes for rpc:
- don't log normal EOF - fix ServeConn to block as documented R=rsc, msolo CC=golang-dev http://codereview.appspot.com/886043
Diffstat (limited to 'src')
-rw-r--r--src/pkg/rpc/server.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/pkg/rpc/server.go b/src/pkg/rpc/server.go
index fa013f163..413f9a59a 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