Index: chrome/common/process_watcher_posix.cc |
diff --git a/chrome/common/process_watcher_posix.cc b/chrome/common/process_watcher_posix.cc |
index 497b80b3342ab0d7b86f69f6130e9b3984b5d38d..f1ae4f400658d0dbb225fd9e3f9cb9c9b0568cb1 100644 |
--- a/chrome/common/process_watcher_posix.cc |
+++ b/chrome/common/process_watcher_posix.cc |
@@ -11,7 +11,6 @@ |
#include "base/eintr_wrapper.h" |
#include "base/platform_thread.h" |
-#include "base/zygote_manager.h" |
// Return true if the given child is dead. This will also reap the process. |
// Doesn't block. |
@@ -70,20 +69,8 @@ class BackgroundReaper : public PlatformThread::Delegate { |
// static |
void ProcessWatcher::EnsureProcessTerminated(base::ProcessHandle process) { |
// If the child is already dead, then there's nothing to do |
- const int result = HANDLE_EINTR(waitpid(process, NULL, WNOHANG)); |
- if (result > 0) |
+ if (IsChildDead(process)) |
return; |
- if (result == -1) { |
-#if defined(OS_LINUX) |
- // If it wasn't our child, maybe it was the zygote manager's child |
- base::ZygoteManager* zm = base::ZygoteManager::Get(); |
- if (zm) { |
- zm->EnsureProcessTerminated(process); |
- return; |
- } |
-#endif // defined(OS_LINUX) |
- NOTREACHED(); |
- } |
BackgroundReaper* reaper = new BackgroundReaper(process); |
PlatformThread::CreateNonJoinable(0, reaper); |