summaryrefslogtreecommitdiff
path: root/compiler/optimizing/builder.cc
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2015-12-10 15:06:15 +0000
committer Nicolas Geoffray <ngeoffray@google.com> 2015-12-10 15:38:48 +0000
commit41844e5071b2540d7b974ba09859170af2720776 (patch)
tree2bb63772ce8b223ead4d8b496ce0a192e41aab42 /compiler/optimizing/builder.cc
parent70a33905e90c655cb17303b238bace2a2f4d5bf9 (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.cc2
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.