diff --git a/.gitignore b/.gitignore index 6c8fa49..2201d89 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +.vscode .DS_Store /tmp/ c-for-go diff --git a/generator/gen_bindings.go b/generator/gen_bindings.go index 1749b98..b409636 100644 --- a/generator/gen_bindings.go +++ b/generator/gen_bindings.go @@ -554,7 +554,8 @@ func (gen *Generator) proxyArgFromGo(memTip tl.Tip, name string, } helper := gen.getCopyBytesHelper(cgoSpec) gen.submitHelper(helper) - proxy = fmt.Sprintf("%s((*sliceHeader)(unsafe.Pointer(&%s)))", helper.Name, name) + // proxy = fmt.Sprintf("%s((*sliceHeader)(unsafe.Pointer(&%s)))", helper.Name, name) + proxy = fmt.Sprintf("(*%s%s)(unsafe.Pointer(&%s[0])), cgoAllocsUnknown", cgoSpec.InnerArr, cgoSpec.Base, name) return proxy, helper.Nillable case isPlain: // ex: byte, [4]byte var ref, ptr string