ttrpc: return buffers to pool
Signed-off-by: Stephen J Day <stephen.day@docker.com>
This commit is contained in:
		| @@ -206,5 +206,6 @@ func (c *Client) recv(resp *Response, msg *message) error { | ||||
| 		return errors.New("unkown message type received") | ||||
| 	} | ||||
|  | ||||
| 	defer c.channel.putmbuf(msg.p) | ||||
| 	return proto.Unmarshal(msg.p, resp) | ||||
| } | ||||
|   | ||||
| @@ -325,11 +325,13 @@ func (c *serverConn) run(sctx context.Context) { | ||||
|  | ||||
| 			var req Request | ||||
| 			if err := c.server.codec.Unmarshal(p, &req); err != nil { | ||||
| 				ch.putmbuf(p) | ||||
| 				if !sendImmediate(mh.StreamID, status.Newf(codes.InvalidArgument, "unmarshal request error: %v", err)) { | ||||
| 					return | ||||
| 				} | ||||
| 				continue | ||||
| 			} | ||||
| 			ch.putmbuf(p) | ||||
|  | ||||
| 			if mh.StreamID%2 != 1 { | ||||
| 				// enforce odd client initiated identifiers. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Stephen J Day
					Stephen J Day