diff --git a/conn.go b/conn.go index d0f50f6..b2f547d 100644 --- a/conn.go +++ b/conn.go @@ -152,7 +152,7 @@ func (c *Conn) new(len uint32) uint32 { panic(err) } ptr := uint32(r[0]) - if ptr == 0 { + if ptr == 0 && len != 0 { panic(oomErr) } return ptr diff --git a/conn_test.go b/conn_test.go index 1512196..bb3a1ef 100644 --- a/conn_test.go +++ b/conn_test.go @@ -114,7 +114,7 @@ func TestConn_free(t *testing.T) { db.free(0) - ptr := db.new(0) + ptr := db.new(1) if ptr == 0 { t.Error("got nullptr, want a pointer") }