ART: Add some reflection cutouts
Add Class.getInnerClassFlags and Method.invoke to unstarted runtime.
Allows to compile-time initialize:
* android.net.NetworkInfo
* android.net.wifi.WifiInfo
Bug: 27265238
(cherry picked from commit b3ffbe32b78c18739736fc998d65430b46c510e5)
Change-Id: I3e267519acf14b08c687f1e831e2027d37158767
diff --git a/runtime/native/java_lang_Class.cc b/runtime/native/java_lang_Class.cc
index c1899af..6b7ca40 100644
--- a/runtime/native/java_lang_Class.cc
+++ b/runtime/native/java_lang_Class.cc
@@ -517,14 +517,7 @@
ScopedFastNativeObjectAccess soa(env);
StackHandleScope<1> hs(soa.Self());
Handle<mirror::Class> klass(hs.NewHandle(DecodeClass(soa, javaThis)));
- if (klass->IsProxyClass() || klass->GetDexCache() == nullptr) {
- return defaultValue;
- }
- uint32_t flags;
- if (!klass->GetDexFile().GetInnerClassFlags(klass, &flags)) {
- return defaultValue;
- }
- return flags;
+ return mirror::Class::GetInnerClassFlags(klass, defaultValue);
}
static jstring Class_getInnerClassName(JNIEnv* env, jobject javaThis) {