mirror of
https://github.com/corda/corda.git
synced 2025-01-01 02:36:44 +00:00
implement JNIEnv::NewLocalRef
This commit is contained in:
parent
1094483a7c
commit
b75497c8ff
@ -396,6 +396,14 @@ Throw(Thread* t, jthrowable throwable)
|
||||
return 0;
|
||||
}
|
||||
|
||||
jobject JNICALL
|
||||
NewLocalRef(Thread* t, jobject o)
|
||||
{
|
||||
ENTER(t, Thread::ActiveState);
|
||||
|
||||
return makeLocalReference(t, *o);
|
||||
}
|
||||
|
||||
void JNICALL
|
||||
DeleteLocalRef(Thread* t, jobject r)
|
||||
{
|
||||
@ -3513,6 +3521,7 @@ populateJNITables(JavaVMVTable* vmTable, JNIEnvVTable* envTable)
|
||||
envTable->NewDirectByteBuffer = local::NewDirectByteBuffer;
|
||||
envTable->GetDirectBufferAddress = local::GetDirectBufferAddress;
|
||||
envTable->GetDirectBufferCapacity = local::GetDirectBufferCapacity;
|
||||
envTable->NewLocalRef = local::NewLocalRef;
|
||||
envTable->DeleteLocalRef = local::DeleteLocalRef;
|
||||
envTable->GetObjectClass = local::GetObjectClass;
|
||||
envTable->GetSuperclass = local::GetSuperclass;
|
||||
|
@ -57,6 +57,8 @@ public class JNI {
|
||||
|
||||
private static native int getStaticIntField(Class c, long id);
|
||||
|
||||
private static native Object testLocalRef(Object o);
|
||||
|
||||
public static int method242() { return 242; }
|
||||
|
||||
public static final int field950 = 950;
|
||||
@ -106,5 +108,9 @@ public class JNI {
|
||||
(JNI.class, fromReflectedField
|
||||
(JNI.class.getField("field950")), true)
|
||||
.getName().equals("field950"));
|
||||
|
||||
{ Object o = new Object();
|
||||
expect(testLocalRef(o) == o);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -101,6 +101,12 @@ Java_JNI_getStaticIntField(JNIEnv* e, jclass, jclass c, jlong id)
|
||||
return e->GetStaticIntField(c, reinterpret_cast<jfieldID>(id));
|
||||
}
|
||||
|
||||
extern "C" JNIEXPORT jobject JNICALL
|
||||
Java_JNI_testLocalRef(JNIEnv* e, jclass, jobject o)
|
||||
{
|
||||
return e->NewLocalRef(o);
|
||||
}
|
||||
|
||||
extern "C" JNIEXPORT jobject JNICALL
|
||||
Java_Buffers_allocateNative(JNIEnv* e, jclass, jint capacity)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user