diff options
author | 2015-12-10 15:06:15 +0000 | |
---|---|---|
committer | 2015-12-10 15:38:48 +0000 | |
commit | 41844e5071b2540d7b974ba09859170af2720776 (patch) | |
tree | 2bb63772ce8b223ead4d8b496ce0a192e41aab42 /compiler/optimizing/builder.cc | |
parent | 70a33905e90c655cb17303b238bace2a2f4d5bf9 (diff) |
Fix braino when resolving an invoke-super.
We should check the actual_method, and not the resolved_method,
on whether it is in the same dex file.
bug:26022686
Change-Id: I8a9b0c68e162015e0aec397545d0607482949967
Diffstat (limited to 'compiler/optimizing/builder.cc')
-rw-r--r-- | compiler/optimizing/builder.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/optimizing/builder.cc b/compiler/optimizing/builder.cc index 2bbf500a98..e1404ce59c 100644 --- a/compiler/optimizing/builder.cc +++ b/compiler/optimizing/builder.cc @@ -785,7 +785,7 @@ ArtMethod* HGraphBuilder::ResolveMethod(uint16_t method_idx, InvokeType invoke_t ArtMethod* actual_method = compiling_class->GetSuperClass()->GetVTableEntry( vtable_index, class_linker->GetImagePointerSize()); if (actual_method != resolved_method && - !IsSameDexFile(*resolved_method->GetDexFile(), *dex_compilation_unit_->GetDexFile())) { + !IsSameDexFile(*actual_method->GetDexFile(), *dex_compilation_unit_->GetDexFile())) { // TODO: The actual method could still be referenced in the current dex file, so we // could try locating it. // TODO: Remove the dex_file restriction. |