浏览代码

fixed #16

Pierre CURTO 8 年之前
父节点
当前提交
88df27974e
共有 4 个文件被更改,包括 25 次插入0 次删除
  1. 二进制
      fuzz/.DS_Store
  2. 24 0
      lz4_test.go
  3. 二进制
      testdata/207326ba-36f8-11e7-954a-aca46ba8ca73.png
  4. 1 0
      writer.go

二进制
fuzz/.DS_Store


+ 24 - 0
lz4_test.go

@@ -8,6 +8,7 @@ import (
 	"io"
 	"io"
 	"io/ioutil"
 	"io/ioutil"
 	"math/big"
 	"math/big"
+	"os"
 	"reflect"
 	"reflect"
 	"testing"
 	"testing"
 
 
@@ -663,3 +664,26 @@ func writeReadChunked(t *testing.T, in []byte, chunkSize int) []byte {
 	}
 	}
 	return out
 	return out
 }
 }
+
+func TestMultiBlockWrite(t *testing.T) {
+	f, err := os.Open("testdata/207326ba-36f8-11e7-954a-aca46ba8ca73.png")
+	if err != nil {
+		t.Fatal(err)
+	}
+	defer f.Close()
+
+	zbuf := bytes.NewBuffer(nil)
+	zw := lz4.NewWriter(zbuf)
+	if _, err := io.Copy(zw, f); err != nil {
+		t.Fatal(err)
+	}
+	if err := zw.Flush(); err != nil {
+		t.Fatal(err)
+	}
+
+	buf := bytes.NewBuffer(nil)
+	zr := lz4.NewReader(zbuf)
+	if _, err := io.Copy(buf, zr); err != nil {
+		t.Fatal(err)
+	}
+}

二进制
testdata/207326ba-36f8-11e7-954a-aca46ba8ca73.png


+ 1 - 0
writer.go

@@ -250,6 +250,7 @@ func (z *Writer) compressBlock(zb block) block {
 		zb.compressed = true
 		zb.compressed = true
 		zb.zdata = zbuf[:n]
 		zb.zdata = zbuf[:n]
 	} else {
 	} else {
+		zb.compressed = false
 		zb.zdata = zb.data[zb.offset:]
 		zb.zdata = zb.data[zb.offset:]
 	}
 	}