This is the mail archive of the
java-patches@sourceware.cygnus.com
mailing list for the Java project.
Patch: JNI test of RegisterNatives
- To: Java Patch List <java-patches at sourceware dot cygnus dot com>
- Subject: Patch: JNI test of RegisterNatives
- From: Tom Tromey <tromey at cygnus dot com>
- Date: 18 Feb 2000 14:17:49 -0700
- Reply-To: tromey at cygnus dot com
I'm checking in this patch, which adds a test for RegisterNatives.
2000-02-18 Tom Tromey <tromey@cygnus.com>
* libjava.jni/register.java: New file.
* libjava.jni/register.c: New file.
* libjava.jni/register.out: New file.
Tom
Index: libjava.jni/register.c
===================================================================
RCS file: register.c
diff -N register.c
--- /dev/null Tue May 5 13:32:27 1998
+++ register.c Fri Feb 18 13:13:36 2000
@@ -0,0 +1,32 @@
+#include <stdlib.h>
+#include <assert.h>
+#include <register.h>
+
+static jint
+some_random_name (JNIEnv *env, jclass k, jint v)
+{
+ return v - 1;
+}
+
+jint
+JNI_OnLoad (JavaVM *vm, void *nothing)
+{
+ JNIEnv *env;
+ JNINativeMethod meth;
+ jclass k;
+ jint r;
+
+ r = (*vm)->GetEnv (vm, (void **) &env, JNI_VERSION_1_2);
+ assert (r == JNI_OK);
+ k = (*env)->FindClass (env, "register");
+ assert (k != NULL);
+
+ meth.name = "doit";
+ meth.signature = "(I)I";
+ meth.fnPtr = some_random_name;
+
+ r = (*env)->RegisterNatives (env, k, &meth, 1);
+ assert (r == JNI_OK);
+
+ return JNI_VERSION_1_2;
+}
Index: libjava.jni/register.java
===================================================================
RCS file: register.java
diff -N register.java
--- /dev/null Tue May 5 13:32:27 1998
+++ register.java Fri Feb 18 13:13:36 2000
@@ -0,0 +1,16 @@
+// register.java - Test RegisterNatives.
+
+public class register
+{
+ static
+ {
+ System.loadLibrary ("register");
+ }
+
+ public static native int doit (int z);
+
+ public static void main (String[] args)
+ {
+ System.out.println (doit (24));
+ }
+}
Index: libjava.jni/register.out
===================================================================
RCS file: register.out
diff -N register.out
--- /dev/null Tue May 5 13:32:27 1998
+++ register.out Fri Feb 18 13:13:36 2000
@@ -0,0 +1 @@
+23