Ensure class is linked before resolution
Adds a missing call to ClassLinker::EnsureResolved to ensure we did link the
class and retired the temp class (placeholder) before doing the resolution.
Bug: 17435441
Change-Id: Ib1a7181d6e5e814ca9299d0504e739a2b69475ef
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index eff2f6f..36247ee 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -2008,7 +2008,7 @@
if (pair.second != nullptr) {
mirror::Class* klass = LookupClass(descriptor, nullptr);
if (klass != nullptr) {
- return klass;
+ return EnsureResolved(self, descriptor, klass);
}
klass = DefineClass(descriptor, NullHandle<mirror::ClassLoader>(), *pair.first,
*pair.second);