From dc20385202c92455369cb5ffe1035929d1231b97 Mon Sep 17 00:00:00 2001 From: Shane Kerr Date: Wed, 25 Oct 2023 18:17:40 +0200 Subject: [PATCH] Replace reflect.SliceHeader with unsafe.Slice --- cmd/lmdb_stat/main.go | 9 ++------- go.mod | 2 +- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/cmd/lmdb_stat/main.go b/cmd/lmdb_stat/main.go index 97ef338a..3bb24692 100644 --- a/cmd/lmdb_stat/main.go +++ b/cmd/lmdb_stat/main.go @@ -18,7 +18,6 @@ import ( "io" "log" "os" - "reflect" "strings" "unsafe" @@ -237,12 +236,8 @@ func doPrintFree(env *lmdb.Env, opt *Options) error { numpages += ipages if opt.PrintFreeSummary || opt.PrintFreeFull { bad := "" - hdr := reflect.SliceHeader{ - Data: uintptr(unsafe.Pointer(&data[0])), - Len: int(ipages) + 1, - Cap: int(ipages) + 1, - } - pages := *(*[]C.size_t)(unsafe.Pointer(&hdr)) + datap := (*C.size_t)(unsafe.Pointer(&data[0])) + pages := unsafe.Slice(datap, ipages+1) pages = pages[1:] var span C.size_t prev := C.size_t(1) diff --git a/go.mod b/go.mod index 07d6a570..2eab136f 100644 --- a/go.mod +++ b/go.mod @@ -1,5 +1,5 @@ module github.com/PowerDNS/lmdb-go -go 1.15 +go 1.17 require golang.org/x/net v0.0.0-20210415231046-e915ea6b2b7d