From 544e82536231e04b185892873d19cd9c575b2252 Mon Sep 17 00:00:00 2001 From: gered Date: Tue, 18 Apr 2017 21:54:36 -0400 Subject: [PATCH] should be casting pointers passed to Java via JNI as jlong, not long this was the only remaining place where this wasn't being done this way --- generator/src/main/java/bwmirror/generator/c/Bind.java | 2 +- .../main/java/bwmirror/generator/ccalls/CallImplementer.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/generator/src/main/java/bwmirror/generator/c/Bind.java b/generator/src/main/java/bwmirror/generator/c/Bind.java index 57eecfc..b7b7ac7 100644 --- a/generator/src/main/java/bwmirror/generator/c/Bind.java +++ b/generator/src/main/java/bwmirror/generator/c/Bind.java @@ -61,7 +61,7 @@ public class Bind { "JNIEXPORT jobject JNICALL Java_" + context.getPackageName() + "_Mirror_getInternalGame(JNIEnv * env, jobject obj){\n" + " jclass gamecls = env->FindClass(\"Lbwapi/Game;\");\n" + " jmethodID getMethodID = env->GetStaticMethodID(gamecls, \"get\", \"(J)Lbwapi/Game;\");\n" + - " return env->CallStaticObjectMethod(gamecls, getMethodID, (long)BroodwarPtr);\n" + + " return env->CallStaticObjectMethod(gamecls, getMethodID, (jlong)BroodwarPtr);\n" + "}\n" ); out.println(); diff --git a/generator/src/main/java/bwmirror/generator/ccalls/CallImplementer.java b/generator/src/main/java/bwmirror/generator/ccalls/CallImplementer.java index f985ac5..5d106c8 100644 --- a/generator/src/main/java/bwmirror/generator/ccalls/CallImplementer.java +++ b/generator/src/main/java/bwmirror/generator/ccalls/CallImplementer.java @@ -382,7 +382,7 @@ public class CallImplementer { out.println("*it;"); } if (!javaContext.isValueType(genericType)) { - out.println("jobject elem = env->CallStaticObjectMethod(elemClass, getMethodID, (long)elem_ptr) ;"); + out.println("jobject elem = env->CallStaticObjectMethod(elemClass, getMethodID, (jlong)elem_ptr) ;"); } else { out.println("jobject elem = env->NewObject(elemClass, elemConsID" + javaContext.implementCopyReturn(genericType, "elem_ptr") + ")" + SEMICOLON); }