| 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);
|
|
|