diff options
author | 2017-12-08 12:00:50 +0000 | |
---|---|---|
committer | 2017-12-08 16:50:21 +0000 | |
commit | 208f67072283be64da231b51f9c195aff403dceb (patch) | |
tree | 97748c71e6c16ae110ccdbb13f50a78e5a21cd33 /runtime/mirror/object.cc | |
parent | 4388fb213ec746ee18a6bea38ee894f8c19990b9 (diff) |
Change ArtField::ProxyFindSystemClass() to lookup the class.
As the function is called from ArtField::LookupType(),
we should avoid calls that appear to allow type resolution
rather than plain lookup. The lookup should always succeed.
Also rename ArtField::LookupType() to LookupResolvedType()
to align with naming used in ClassLinker and ArtMethod.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Change-Id: I0a87347b5341575e47e0fdba6d58ade2543387c8
Diffstat (limited to 'runtime/mirror/object.cc')
-rw-r--r-- | runtime/mirror/object.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/mirror/object.cc b/runtime/mirror/object.cc index 87cc620309..97fb793530 100644 --- a/runtime/mirror/object.cc +++ b/runtime/mirror/object.cc @@ -240,7 +240,7 @@ void Object::CheckFieldAssignmentImpl(MemberOffset field_offset, ObjPtr<Object> CHECK_NE(field.GetTypeAsPrimitiveType(), Primitive::kPrimNot); // TODO: resolve the field type for moving GC. ObjPtr<mirror::Class> field_type = - kMovingCollector ? field.LookupType() : field.ResolveType(); + kMovingCollector ? field.LookupResolvedType() : field.ResolveType(); if (field_type != nullptr) { CHECK(field_type->IsAssignableFrom(new_value->GetClass())); } @@ -258,7 +258,7 @@ void Object::CheckFieldAssignmentImpl(MemberOffset field_offset, ObjPtr<Object> CHECK_NE(field.GetTypeAsPrimitiveType(), Primitive::kPrimNot); // TODO: resolve the field type for moving GC. ObjPtr<mirror::Class> field_type = - kMovingCollector ? field.LookupType() : field.ResolveType(); + kMovingCollector ? field.LookupResolvedType() : field.ResolveType(); if (field_type != nullptr) { CHECK(field_type->IsAssignableFrom(new_value->GetClass())); } |