Commit 4ae456dc authored by earthdok's avatar earthdok Committed by Commit bot

Enable clean child process exit in sanitizer builds on ChromeOS.

This was blocked on a WebRTC issue for a long time. However,
latest trybot runs appear green.

BUG=360622, 324216, 307043
TBR=jam@chromium.org

Review URL: https://codereview.chromium.org/227533008

Cr-Commit-Position: refs/heads/master@{#315350}
parent f55ad376
......@@ -163,10 +163,9 @@ ChildProcessLauncher::Context::Context()
zygote_(false),
#endif
starting_(true),
// TODO(earthdok): Re-enable on CrOS http://crbug.com/360622
#if (defined(ADDRESS_SANITIZER) || defined(LEAK_SANITIZER) || \
defined(MEMORY_SANITIZER) || defined(THREAD_SANITIZER) || \
defined(UNDEFINED_SANITIZER)) && !defined(OS_CHROMEOS)
#if defined(ADDRESS_SANITIZER) || defined(LEAK_SANITIZER) || \
defined(MEMORY_SANITIZER) || defined(THREAD_SANITIZER) || \
defined(UNDEFINED_SANITIZER)
terminate_child_on_shutdown_(false) {
#else
terminate_child_on_shutdown_(true) {
......
......@@ -79,10 +79,9 @@ base::LazyInstance<base::ThreadLocalPointer<ChildThreadImpl> > g_lazy_tls =
// plugins), PluginThread has EnsureTerminateMessageFilter.
#if defined(OS_POSIX)
// TODO(earthdok): Re-enable on CrOS http://crbug.com/360622
#if (defined(ADDRESS_SANITIZER) || defined(LEAK_SANITIZER) || \
defined(MEMORY_SANITIZER) || defined(THREAD_SANITIZER) || \
defined(UNDEFINED_SANITIZER)) && !defined(OS_CHROMEOS)
#if defined(ADDRESS_SANITIZER) || defined(LEAK_SANITIZER) || \
defined(MEMORY_SANITIZER) || defined(THREAD_SANITIZER) || \
defined(UNDEFINED_SANITIZER)
// A thread delegate that waits for |duration| and then exits the process with
// _exit(0).
class WaitAndExitDelegate : public base::PlatformThread::Delegate {
......@@ -137,10 +136,9 @@ class SuicideOnChannelErrorFilter : public IPC::MessageFilter {
//
// So, we install a filter on the sender so that we can process this event
// here and kill the process.
// TODO(earthdok): Re-enable on CrOS http://crbug.com/360622
#if (defined(ADDRESS_SANITIZER) || defined(LEAK_SANITIZER) || \
defined(MEMORY_SANITIZER) || defined(THREAD_SANITIZER) || \
defined(UNDEFINED_SANITIZER)) && !defined(OS_CHROMEOS)
#if defined(ADDRESS_SANITIZER) || defined(LEAK_SANITIZER) || \
defined(MEMORY_SANITIZER) || defined(THREAD_SANITIZER) || \
defined(UNDEFINED_SANITIZER)
// Some sanitizer tools rely on exit handlers (e.g. to run leak detection,
// or dump code coverage data to disk). Instead of exiting the process
// immediately, we give it 60 seconds to run exit handlers.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment