浏览代码

simplify chain writing

Darien Raymond 9 年之前
父节点
当前提交
88c9947285
共有 1 个文件被更改,包括 4 次插入10 次删除
  1. 4 10
      common/io/chain_writer.go

+ 4 - 10
common/io/chain_writer.go

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