Add JNI GetArrayLength and start throwing from FindClass.
Change-Id: I080a6ffc5496b47454273acd58c230bda5e04cdd
diff --git a/src/jni_internal.cc b/src/jni_internal.cc
index 9539b64..a892a28 100644
--- a/src/jni_internal.cc
+++ b/src/jni_internal.cc
@@ -1715,10 +1715,12 @@
UNIMPLEMENTED(FATAL);
}
- static jsize GetArrayLength(JNIEnv* env, jarray array) {
+ static jsize GetArrayLength(JNIEnv* env, jarray java_array) {
ScopedJniThreadState ts(env);
- UNIMPLEMENTED(FATAL);
- return 0;
+ Object* obj = Decode<Object*>(ts, java_array);
+ CHECK(obj->IsArray()); // TODO: ReportJniError
+ Array* array = obj->AsArray();
+ return array->GetLength();
}
static jobject GetObjectArrayElement(JNIEnv* env, jobjectArray array, jsize index) {