diff options
author | 2018-10-26 16:53:25 +0000 | |
---|---|---|
committer | 2018-10-26 16:53:25 +0000 | |
commit | d33d318685ec4a1c9e7995c914c104ab6487513b (patch) | |
tree | 3bb8a93f499ac537d445e90533598571f3d2d120 /runtime/class_linker.cc | |
parent | fe3a979f6214e2ea94a9aed4c573c6a6f64c7096 (diff) |
Revert "Revert^2: Add dex item for hiddenapi flags"
This reverts commit fe3a979f6214e2ea94a9aed4c573c6a6f64c7096.
Reason for revert: Caught by droidcop https://b.corp.google.com/issues/118481351
Change-Id: I17cc3586c9ae3b49839633d9543edce2937c388d
Diffstat (limited to 'runtime/class_linker.cc')
-rw-r--r-- | runtime/class_linker.cc | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc index dab8d589e6..c18abab8cb 100644 --- a/runtime/class_linker.cc +++ b/runtime/class_linker.cc @@ -3244,9 +3244,7 @@ void ClassLinker::LoadClass(Thread* self, const DexFile& dex_file, const DexFile::ClassDef& dex_class_def, Handle<mirror::Class> klass) { - ClassAccessor accessor(dex_file, - dex_class_def, - /* parse_hiddenapi_class_data= */ klass->IsBootStrapClassLoaded()); + ClassAccessor accessor(dex_file, dex_class_def); if (!accessor.HasClassData()) { return; } @@ -3362,8 +3360,8 @@ void ClassLinker::LoadField(const ClassAccessor::Field& field, // also set its runtime hidden API access flags. uint32_t access_flags = field.GetAccessFlags(); if (klass->IsBootStrapClassLoaded()) { - access_flags = HiddenApiAccessFlags::EncodeForRuntime( - access_flags, static_cast<HiddenApiAccessFlags::ApiList>(field.GetHiddenapiFlags())); + access_flags = + HiddenApiAccessFlags::EncodeForRuntime(access_flags, field.DecodeHiddenAccessFlags()); } dst->SetAccessFlags(access_flags); } @@ -3384,9 +3382,10 @@ void ClassLinker::LoadMethod(const DexFile& dex_file, // Get access flags from the DexFile. If this is a boot class path class, // also set its runtime hidden API access flags. uint32_t access_flags = method.GetAccessFlags(); + if (klass->IsBootStrapClassLoaded()) { - access_flags = HiddenApiAccessFlags::EncodeForRuntime( - access_flags, static_cast<HiddenApiAccessFlags::ApiList>(method.GetHiddenapiFlags())); + access_flags = + HiddenApiAccessFlags::EncodeForRuntime(access_flags, method.DecodeHiddenAccessFlags()); } if (UNLIKELY(strcmp("finalize", method_name) == 0)) { |