diff options
author | 2018-03-29 10:21:47 +0100 | |
---|---|---|
committer | 2018-04-06 10:07:49 -0700 | |
commit | a9660f1dc13b4d595b3f89b06dd5b70eeee18c43 (patch) | |
tree | fba8c4742d8f866b8342794542436ab3cd3f32a8 /runtime/native/java_lang_Class.cc | |
parent | 9c85c79af0e5fe181df97dfc2801f4999aef77eb (diff) |
hidden_api: Call back into libcore on hidden api detection
This change also removes some unnecessary RI specific logic for
building src-ex since it isn't required.
Bug: 73896556
Test: run-test --host 674-hiddenapi
Test: StrictModeTest
Co-Authored-By: Andreas Gampe <agampe@google.com>
(cherry picked from commit 757a9d0a2e97d43bafeb8a95cc3c51102be99586)
Merged-In: Ib2b4dfad55c5d829630bfe2adb4a468124bea61c
Change-Id: Ida0943990aa1b3bad0c674bc31ff46766ae493a6
Diffstat (limited to 'runtime/native/java_lang_Class.cc')
-rw-r--r-- | runtime/native/java_lang_Class.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/runtime/native/java_lang_Class.cc b/runtime/native/java_lang_Class.cc index ad05856eaf..1c17806b5e 100644 --- a/runtime/native/java_lang_Class.cc +++ b/runtime/native/java_lang_Class.cc @@ -535,18 +535,19 @@ static jobjectArray Class_getDeclaredConstructorsInternal( static jobject Class_getDeclaredMethodInternal(JNIEnv* env, jobject javaThis, jstring name, jobjectArray args) { ScopedFastNativeObjectAccess soa(env); + StackHandleScope<1> hs(soa.Self()); DCHECK_EQ(Runtime::Current()->GetClassLinker()->GetImagePointerSize(), kRuntimePointerSize); DCHECK(!Runtime::Current()->IsActiveTransaction()); - ObjPtr<mirror::Method> result = + Handle<mirror::Method> result = hs.NewHandle( mirror::Class::GetDeclaredMethodInternal<kRuntimePointerSize, false>( soa.Self(), DecodeClass(soa, javaThis), soa.Decode<mirror::String>(name), - soa.Decode<mirror::ObjectArray<mirror::Class>>(args)); + soa.Decode<mirror::ObjectArray<mirror::Class>>(args))); if (result == nullptr || ShouldBlockAccessToMember(result->GetArtMethod(), soa.Self())) { return nullptr; } - return soa.AddLocalReference<jobject>(result); + return soa.AddLocalReference<jobject>(result.Get()); } static jobjectArray Class_getDeclaredMethodsUnchecked(JNIEnv* env, jobject javaThis, |