ART: Add GetClassLoader
Add support for GetClassLoader. Add a test.
Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: I629ec2a1f4843bc3b28e40111805e250be44d993
diff --git a/test/912-classes/classes.cc b/test/912-classes/classes.cc
index 5674e7b..bb3dee1 100644
--- a/test/912-classes/classes.cc
+++ b/test/912-classes/classes.cc
@@ -191,6 +191,20 @@
return status;
}
+extern "C" JNIEXPORT jobject JNICALL Java_Main_getClassLoader(
+ JNIEnv* env ATTRIBUTE_UNUSED, jclass Main_klass ATTRIBUTE_UNUSED, jclass klass) {
+ jobject classloader;
+ jvmtiError result = jvmti_env->GetClassLoader(klass, &classloader);
+ if (result != JVMTI_ERROR_NONE) {
+ char* err;
+ jvmti_env->GetErrorName(result, &err);
+ printf("Failure running GetClassLoader: %s\n", err);
+ jvmti_env->Deallocate(reinterpret_cast<unsigned char*>(err));
+ return nullptr;
+ }
+ return classloader;
+}
+
// Don't do anything
jint OnLoad(JavaVM* vm,
char* options ATTRIBUTE_UNUSED,