summaryrefslogtreecommitdiff
path: root/runtime/class_linker.cc
diff options
context:
space:
mode:
author Mathieu Chartier <mathieuc@google.com> 2018-04-06 20:11:28 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2018-04-06 20:11:28 +0000
commitfaa7b29f1e0c311e42ab5a265cb1b17036ca5a10 (patch)
tree2d47cb8b1c10df002a602009724a026b136b3c9d /runtime/class_linker.cc
parentd7d9f00b9e87e491f2fc0631ed64ad1acde9c744 (diff)
parentf5f1f80aa6c1c10c61b6723bbc52d5aec2eba2b9 (diff)
Merge changes from topic "hidden_api_cp"
* changes: Revert^2 "hidden_api: Call back into libcore on hidden api detection"" Revert "hidden_api: Call back into libcore on hidden api detection" hidden_api: Call back into libcore on hidden api detection
Diffstat (limited to 'runtime/class_linker.cc')
-rw-r--r--runtime/class_linker.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index 5e69efea77..3f33f7976e 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -7860,8 +7860,8 @@ ArtMethod* ClassLinker::FindResolvedMethod(ObjPtr<mirror::Class> klass,
}
DCHECK(resolved == nullptr || resolved->GetDeclaringClassUnchecked() != nullptr);
if (resolved != nullptr &&
- hiddenapi::ShouldBlockAccessToMember(
- resolved, class_loader, dex_cache, hiddenapi::kLinking)) {
+ hiddenapi::GetMemberAction(
+ resolved, class_loader, dex_cache, hiddenapi::kLinking) == hiddenapi::kDeny) {
resolved = nullptr;
}
if (resolved != nullptr) {
@@ -8003,8 +8003,8 @@ ArtMethod* ClassLinker::ResolveMethodWithoutInvokeType(uint32_t method_idx,
resolved = klass->FindClassMethod(dex_cache.Get(), method_idx, image_pointer_size_);
}
if (resolved != nullptr &&
- hiddenapi::ShouldBlockAccessToMember(
- resolved, class_loader.Get(), dex_cache.Get(), hiddenapi::kLinking)) {
+ hiddenapi::GetMemberAction(
+ resolved, class_loader.Get(), dex_cache.Get(), hiddenapi::kLinking) == hiddenapi::kDeny) {
resolved = nullptr;
}
return resolved;
@@ -8083,8 +8083,8 @@ ArtField* ClassLinker::ResolveField(uint32_t field_idx,
}
if (resolved == nullptr ||
- hiddenapi::ShouldBlockAccessToMember(
- resolved, class_loader.Get(), dex_cache.Get(), hiddenapi::kLinking)) {
+ hiddenapi::GetMemberAction(
+ resolved, class_loader.Get(), dex_cache.Get(), hiddenapi::kLinking) == hiddenapi::kDeny) {
const char* name = dex_file.GetFieldName(field_id);
const char* type = dex_file.GetFieldTypeDescriptor(field_id);
ThrowNoSuchFieldError(is_static ? "static " : "instance ", klass, type, name);
@@ -8117,8 +8117,8 @@ ArtField* ClassLinker::ResolveFieldJLS(uint32_t field_idx,
StringPiece type(dex_file.GetFieldTypeDescriptor(field_id));
resolved = mirror::Class::FindField(self, klass, name, type);
if (resolved != nullptr &&
- hiddenapi::ShouldBlockAccessToMember(
- resolved, class_loader.Get(), dex_cache.Get(), hiddenapi::kLinking)) {
+ hiddenapi::GetMemberAction(
+ resolved, class_loader.Get(), dex_cache.Get(), hiddenapi::kLinking) == hiddenapi::kDeny) {
resolved = nullptr;
}
if (resolved != nullptr) {