Revert "Revert "Unload oat files""
Fixed a race where two threads calling OatFile::Open could both use
dlopen on the host.
Bug: 22720414
This reverts commit 72da5e7461fec3b1e116050f2e6f233efb9c54f3.
Change-Id: I1636045b724944d2a09417527280784967957095
diff --git a/runtime/runtime.cc b/runtime/runtime.cc
index 7a1f0af..b623ba1 100644
--- a/runtime/runtime.cc
+++ b/runtime/runtime.cc
@@ -282,10 +282,10 @@
delete monitor_list_;
delete monitor_pool_;
delete class_linker_;
- oat_file_manager_.reset();
delete heap_;
delete intern_table_;
delete java_vm_;
+ delete oat_file_manager_;
Thread::Shutdown();
QuasiAtomic::Shutdown();
verifier::MethodVerifier::Shutdown();
@@ -833,7 +833,7 @@
QuasiAtomic::Startup();
- oat_file_manager_.reset(new OatFileManager);
+ oat_file_manager_ = new OatFileManager;
Monitor::Init(runtime_options.GetOrDefault(Opt::LockProfThreshold),
runtime_options.GetOrDefault(Opt::HookIsSensitiveThread));