diff options
Diffstat (limited to 'patchoat/patchoat.cc')
| -rw-r--r-- | patchoat/patchoat.cc | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/patchoat/patchoat.cc b/patchoat/patchoat.cc index 3c8c1a397c..db28a3f494 100644 --- a/patchoat/patchoat.cc +++ b/patchoat/patchoat.cc @@ -498,7 +498,7 @@ bool PatchOat::ReplaceOatFileWithSymlink(const std::string& input_oat_filename, return true; } -class PatchOatArtFieldVisitor : public ArtFieldVisitor { +class PatchOat::PatchOatArtFieldVisitor : public ArtFieldVisitor { public: explicit PatchOatArtFieldVisitor(PatchOat* patch_oat) : patch_oat_(patch_oat) {} @@ -517,7 +517,7 @@ void PatchOat::PatchArtFields(const ImageHeader* image_header) { image_header->VisitPackedArtFields(&visitor, heap_->Begin()); } -class PatchOatArtMethodVisitor : public ArtMethodVisitor { +class PatchOat::PatchOatArtMethodVisitor : public ArtMethodVisitor { public: explicit PatchOatArtMethodVisitor(PatchOat* patch_oat) : patch_oat_(patch_oat) {} @@ -558,7 +558,7 @@ void PatchOat::PatchImtConflictTables(const ImageHeader* image_header) { pointer_size); } -class FixupRootVisitor : public RootVisitor { +class PatchOat::FixupRootVisitor : public RootVisitor { public: explicit FixupRootVisitor(const PatchOat* patch_oat) : patch_oat_(patch_oat) { } @@ -610,7 +610,7 @@ void PatchOat::PatchClassTable(const ImageHeader* image_header) { } -class RelocatedPointerVisitor { +class PatchOat::RelocatedPointerVisitor { public: explicit RelocatedPointerVisitor(PatchOat* patch_oat) : patch_oat_(patch_oat) {} @@ -762,16 +762,14 @@ void PatchOat::VisitObject(mirror::Object* object) { if (vtable != nullptr) { vtable->Fixup(RelocatedCopyOfFollowImages(vtable), pointer_size, native_visitor); } - auto* iftable = klass->GetIfTable(); - if (iftable != nullptr) { - for (int32_t i = 0; i < klass->GetIfTableCount(); ++i) { - if (iftable->GetMethodArrayCount(i) > 0) { - auto* method_array = iftable->GetMethodArray(i); - CHECK(method_array != nullptr); - method_array->Fixup(RelocatedCopyOfFollowImages(method_array), - pointer_size, - native_visitor); - } + mirror::IfTable* iftable = klass->GetIfTable(); + for (int32_t i = 0; i < klass->GetIfTableCount(); ++i) { + if (iftable->GetMethodArrayCount(i) > 0) { + auto* method_array = iftable->GetMethodArray(i); + CHECK(method_array != nullptr); + method_array->Fixup(RelocatedCopyOfFollowImages(method_array), + pointer_size, + native_visitor); } } } else if (object->GetClass() == mirror::Method::StaticClass() || |