diff options
Diffstat (limited to 'gcc-4.4.0/libjava/testsuite/libjava.jni/cxxtest.cc')
-rw-r--r-- | gcc-4.4.0/libjava/testsuite/libjava.jni/cxxtest.cc | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc-4.4.0/libjava/testsuite/libjava.jni/cxxtest.cc b/gcc-4.4.0/libjava/testsuite/libjava.jni/cxxtest.cc new file mode 100644 index 000000000..577273bb5 --- /dev/null +++ b/gcc-4.4.0/libjava/testsuite/libjava.jni/cxxtest.cc @@ -0,0 +1,24 @@ +#include <jni.h> +#include <cxxtest.h> + +jobjectArray +Java_cxxtest_fetch (JNIEnv *env, jobject _this) +{ + jclass cls; + jfieldID fid; + jobjectArray obj; + + cls = env->GetObjectClass (_this); + if (! cls) + return 0; + + fid = env->GetFieldID (cls, "F", "[Ljava/lang/Object;"); + if (! fid) + return 0; + + obj = reinterpret_cast<jobjectArray> (env->GetObjectField (_this, fid)); + + return obj; +} + + |