1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2025-01-03 07:56:42 -05:00

simplify chain writing

This commit is contained in:
Darien Raymond 2016-12-06 11:27:58 +01:00
parent 8c8f0a53fd
commit 88c9947285
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169

View File

@ -29,16 +29,10 @@ func (v *ChainWriter) Write(payload []byte) (int, error) {
size := len(payload) size := len(payload)
for size > 0 { for size > 0 {
buffer := alloc.NewBuffer() buffer := alloc.NewBuffer()
if size > alloc.BufferSize { nBytes, _ := buffer.Write(payload)
buffer.Append(payload[:alloc.BufferSize]) size -= nBytes
size -= alloc.BufferSize payload = payload[nBytes:]
payload = payload[alloc.BufferSize:] bytesWritten += nBytes
bytesWritten += alloc.BufferSize
} else {
buffer.Append(payload)
bytesWritten += size
size = 0
}
err := v.writer.Write(buffer) err := v.writer.Write(buffer)
if err != nil { if err != nil {
return bytesWritten, err return bytesWritten, err