use compact in tls writer

pull/1869/head^2
Darien Raymond 2018-12-27 20:38:24 +01:00
parent c72d853454
commit 41b1ac192e
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169
1 changed files with 4 additions and 9 deletions

View File

@ -15,19 +15,14 @@ var (
type conn struct { type conn struct {
*tls.Conn *tls.Conn
mergingWriter *buf.BufferedWriter
} }
func (c *conn) WriteMultiBuffer(mb buf.MultiBuffer) error { func (c *conn) WriteMultiBuffer(mb buf.MultiBuffer) error {
if c.mergingWriter == nil { mb = buf.Compact(mb)
c.mergingWriter = buf.NewBufferedWriter(buf.NewWriter(c.Conn)) mb, err := buf.WriteMultiBuffer(c, mb)
} buf.ReleaseMulti(mb)
if err := c.mergingWriter.WriteMultiBuffer(mb); err != nil {
return err return err
} }
return c.mergingWriter.Flush()
}
func (c *conn) HandshakeAddress() net.Address { func (c *conn) HandshakeAddress() net.Address {
if err := c.Handshake(); err != nil { if err := c.Handshake(); err != nil {