On Android, the JNI jobject type doesn't always contain a pointer. Treating a non-pointer as a pointer can crash the runtime. Use the more appropriate type uintptr instead. Change-Id: I2b2049918d60226c4d23d6df0b10e68248d54bc2 Reviewed-on: https://go-review.googlesource.com/110256 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
22 lines
472 B
Go
22 lines
472 B
Go
// Copyright 2016 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package java // import "golang.org/x/mobile/bind/java"
|
|
|
|
// #cgo LDFLAGS: -llog
|
|
//
|
|
//#include <jni.h>
|
|
import "C"
|
|
|
|
import (
|
|
"unsafe"
|
|
|
|
"golang.org/x/mobile/internal/mobileinit"
|
|
)
|
|
|
|
//export setContext
|
|
func setContext(vm *C.JavaVM, ctx C.jobject) {
|
|
mobileinit.SetCurrentContext(unsafe.Pointer(vm), uintptr(ctx))
|
|
}
|