diff --git a/server/server.go b/server/server.go index 9de29454..5a7b6229 100644 --- a/server/server.go +++ b/server/server.go @@ -216,12 +216,12 @@ func (srv *Server) handleCall(ctx context.Context, c *Call) { err := c.method.Impl(ctx, c) c.recv.ReleaseArgs() + c.recv.Returner.Return(err) if err == nil { c.aq.fulfill(c.results) } else { c.aq.reject(err) } - c.recv.Returner.Return(err) c.recv.Returner.ReleaseResults() }