Merge "AArch64: Use long for pointers in SurfaceSession class"

This commit is contained in:
Narayan Kamath
2014-02-14 13:10:43 +00:00
committed by Gerrit Code Review
2 changed files with 13 additions and 13 deletions

View File

@@ -24,11 +24,11 @@ package android.view;
*/
public final class SurfaceSession {
// Note: This field is accessed by native code.
private int mNativeClient; // SurfaceComposerClient*
private long mNativeClient; // SurfaceComposerClient*
private static native int nativeCreate();
private static native void nativeDestroy(int ptr);
private static native void nativeKill(int ptr);
private static native long nativeCreate();
private static native void nativeDestroy(long ptr);
private static native void nativeKill(long ptr);
/** Create a new connection with the surface flinger. */
public SurfaceSession() {

View File

@@ -35,22 +35,22 @@ static struct {
sp<SurfaceComposerClient> android_view_SurfaceSession_getClient(
JNIEnv* env, jobject surfaceSessionObj) {
return reinterpret_cast<SurfaceComposerClient*>(
env->GetIntField(surfaceSessionObj, gSurfaceSessionClassInfo.mNativeClient));
env->GetLongField(surfaceSessionObj, gSurfaceSessionClassInfo.mNativeClient));
}
static jint nativeCreate(JNIEnv* env, jclass clazz) {
static jlong nativeCreate(JNIEnv* env, jclass clazz) {
SurfaceComposerClient* client = new SurfaceComposerClient();
client->incStrong((void*)nativeCreate);
return reinterpret_cast<jint>(client);
return reinterpret_cast<jlong>(client);
}
static void nativeDestroy(JNIEnv* env, jclass clazz, jint ptr) {
static void nativeDestroy(JNIEnv* env, jclass clazz, jlong ptr) {
SurfaceComposerClient* client = reinterpret_cast<SurfaceComposerClient*>(ptr);
client->decStrong((void*)nativeCreate);
}
static void nativeKill(JNIEnv* env, jclass clazz, jint ptr) {
static void nativeKill(JNIEnv* env, jclass clazz, jlong ptr) {
SurfaceComposerClient* client = reinterpret_cast<SurfaceComposerClient*>(ptr);
client->dispose();
}
@@ -58,11 +58,11 @@ static void nativeKill(JNIEnv* env, jclass clazz, jint ptr) {
static JNINativeMethod gMethods[] = {
/* name, signature, funcPtr */
{ "nativeCreate", "()I",
{ "nativeCreate", "()J",
(void*)nativeCreate },
{ "nativeDestroy", "(I)V",
{ "nativeDestroy", "(J)V",
(void*)nativeDestroy },
{ "nativeKill", "(I)V",
{ "nativeKill", "(J)V",
(void*)nativeKill }
};
@@ -72,7 +72,7 @@ int register_android_view_SurfaceSession(JNIEnv* env) {
LOG_ALWAYS_FATAL_IF(res < 0, "Unable to register native methods.");
jclass clazz = env->FindClass("android/view/SurfaceSession");
gSurfaceSessionClassInfo.mNativeClient = env->GetFieldID(clazz, "mNativeClient", "I");
gSurfaceSessionClassInfo.mNativeClient = env->GetFieldID(clazz, "mNativeClient", "J");
return 0;
}