diff options
Diffstat (limited to 'compiler/elf_writer_mclinker.cc')
-rw-r--r-- | compiler/elf_writer_mclinker.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/compiler/elf_writer_mclinker.cc b/compiler/elf_writer_mclinker.cc index eb9b2306d5..aa4a5b2c07 100644 --- a/compiler/elf_writer_mclinker.cc +++ b/compiler/elf_writer_mclinker.cc @@ -361,8 +361,9 @@ void ElfWriterMclinker::FixupOatMethodOffsets(const std::vector<const DexFile*>& ClassLinker* linker = Runtime::Current()->GetClassLinker(); // Unchecked as we hold mutator_lock_ on entry. ScopedObjectAccessUnchecked soa(Thread::Current()); - Handle<mirror::DexCache> dex_cache(soa.Self(), linker->FindDexCache(dex_file)); - Handle<mirror::ClassLoader> class_loader(soa.Self(), nullptr); + StackHandleScope<2> hs(soa.Self()); + Handle<mirror::DexCache> dex_cache(hs.NewHandle(linker->FindDexCache(dex_file))); + auto class_loader(hs.NewHandle<mirror::ClassLoader>(nullptr)); method = linker->ResolveMethod(dex_file, method_idx, dex_cache, class_loader, NULL, invoke_type); CHECK(method != NULL); } |