summaryrefslogtreecommitdiff
path: root/runtime/native/java_lang_Class.cc
diff options
context:
space:
mode:
author Andreas Gampe <agampe@google.com> 2016-04-18 17:07:30 -0700
committer Andreas Gampe <agampe@google.com> 2016-04-20 10:20:45 -0700
commit715fdc2c99f688f97c684978632f311a284ba43c (patch)
treea45838f4788a04ec18332bf386e8eaf2daa07632 /runtime/native/java_lang_Class.cc
parenta584db5460a31198bf621cdacf5bc304a984efa4 (diff)
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
Diffstat (limited to 'runtime/native/java_lang_Class.cc')
-rw-r--r--runtime/native/java_lang_Class.cc9
1 files changed, 1 insertions, 8 deletions
diff --git a/runtime/native/java_lang_Class.cc b/runtime/native/java_lang_Class.cc
index c1899afc49..6b7ca40bee 100644
--- a/runtime/native/java_lang_Class.cc
+++ b/runtime/native/java_lang_Class.cc
@@ -517,14 +517,7 @@ static jint Class_getInnerClassFlags(JNIEnv* env, jobject javaThis, jint default
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) {