Don't call exit() with threads running

Otherwise running threads race with destructors.

Bug: 150176543
Test: Build and boot AOSP
Change-Id: I159164a36d9808ae86c2928271b14736178e127b
This commit is contained in:
Hans Boehm
2020-04-10 18:02:42 -07:00
parent c9252b3591
commit 0fcf4a605d

View File

@@ -1285,12 +1285,11 @@ void AndroidRuntime::exit(int code)
{
if (mExitWithoutCleanup) {
ALOGI("VM exiting with result code %d, cleanup skipped.", code);
::_exit(code);
} else {
ALOGI("VM exiting with result code %d.", code);
onExit(code);
::exit(code);
}
::_exit(code);
}
void AndroidRuntime::onVmCreated(JNIEnv* env)