From f103d3bbc3508eeb2b5617f54c6d729bedb4f24f Mon Sep 17 00:00:00 2001 From: Julian Hegler Date: Sat, 18 Jan 2020 20:04:21 -0500 Subject: [PATCH 1/2] Return 1 byte length for zero len values bits.Len returns 0 when len == 0. That results in a zero result returned by `spaceForLength` due to integer division (6/7). The writeLength function is then called using 1 byte to write the zero length value. --- stringbank.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/stringbank.go b/stringbank.go index b89e679..e614ffc 100644 --- a/stringbank.go +++ b/stringbank.go @@ -74,6 +74,9 @@ func (s *Stringbank) reserve(l int) (index int, data []byte) { } func spaceForLength(len int) int { + if len == 0 { + return 1 + } // 7 bits => 1 byte // 8 bits => 2 byte // 1 From 99d9a99eb74c4c9017ffd6fe9c4b19c0d3b6bce5 Mon Sep 17 00:00:00 2001 From: Julian Hegler Date: Sun, 19 Jan 2020 10:41:05 -0500 Subject: [PATCH 2/2] Update module path --- go.mod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go.mod b/go.mod index d216642..4db07f8 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/philpearl/stringbank +module github.com/ou05020/stringbank go 1.12