diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-24 23:55:36 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-24 23:55:36 +0000 |
commit | 0704d13a2676c38f837cdd6514e842401279cfc5 (patch) | |
tree | 810841ac6ee37b37a2e87793711daaea564cb253 /base | |
parent | 6cabe2099c7006d12d7416a6f7349ebbee398abc (diff) | |
download | chromium_src-0704d13a2676c38f837cdd6514e842401279cfc5.zip chromium_src-0704d13a2676c38f837cdd6514e842401279cfc5.tar.gz chromium_src-0704d13a2676c38f837cdd6514e842401279cfc5.tar.bz2 |
Port unload_uitest.cc and enable some of the tests on linux.
Make WaitForSingleProcess respect base::kNoTimeout (which is equivalent to INFINITE on windows).
Review URL: http://codereview.chromium.org/99008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14508 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r-- | base/process_util_posix.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/base/process_util_posix.cc b/base/process_util_posix.cc index 562b8e9..2e3fd55 100644 --- a/base/process_util_posix.cc +++ b/base/process_util_posix.cc @@ -22,6 +22,7 @@ #include "base/scoped_ptr.h" #include "base/sys_info.h" #include "base/time.h" +#include "base/waitable_event.h" const int kMicrosecondsPerSecond = 1000000; @@ -207,7 +208,7 @@ int WaitpidWithTimeout(ProcessHandle handle, int wait_milliseconds, // has been installed. This means that when a SIGCHLD is sent, it will exit // depending on behavior external to this function. // - // This function is used primarilly for unit tests, if we want to use it in + // This function is used primarily for unit tests, if we want to use it in // the application itself it would probably be best to examine other routes. int status = -1; pid_t ret_pid = waitpid(handle, &status, WNOHANG); @@ -243,7 +244,11 @@ int WaitpidWithTimeout(ProcessHandle handle, int wait_milliseconds, bool WaitForSingleProcess(ProcessHandle handle, int wait_milliseconds) { bool waitpid_success; - int status = WaitpidWithTimeout(handle, wait_milliseconds, &waitpid_success); + int status; + if (wait_milliseconds == base::kNoTimeout) + waitpid_success = (waitpid(handle, &status, 0) != -1); + else + status = WaitpidWithTimeout(handle, wait_milliseconds, &waitpid_success); if (status != -1) { DCHECK(waitpid_success); return WIFEXITED(status); |