]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/link: fix invalid usage of reflect.SliceHeader
authorCuong Manh Le <cuong.manhle.vn@gmail.com>
Sat, 7 Nov 2020 05:03:36 +0000 (12:03 +0700)
committerCuong Manh Le <cuong.manhle.vn@gmail.com>
Sat, 7 Nov 2020 16:31:02 +0000 (16:31 +0000)
Caught by "go vet" built with golang.org/cl/248192.

Change-Id: I446083533dd82ecef8db591beb7bd3d70b040d4a
Reviewed-on: https://go-review.googlesource.com/c/go/+/268099
Trust: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/link/internal/ld/outbuf_windows.go

index 60dc1ab92dd0bd630e24dcfa93f228f0310104d2..915c72bef3eeaabffe3120896f4cf627256eaa59 100644 (file)
@@ -35,7 +35,10 @@ func (out *OutBuf) Mmap(filesize uint64) error {
        if err != nil {
                return err
        }
-       *(*reflect.SliceHeader)(unsafe.Pointer(&out.buf)) = reflect.SliceHeader{Data: ptr, Len: int(filesize), Cap: int(filesize)}
+       bufHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.buf))
+       bufHdr.Data = ptr
+       bufHdr.Len = int(filesize)
+       bufHdr.Cap = int(filesize)
 
        // copy heap to new mapping
        if uint64(oldlen+len(out.heap)) > filesize {