Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7029)

Unified Diff: chrome/test/chromedriver/chrome/chrome_desktop_impl.cc

Issue 999033003: Remove uses of KillProcess() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/test/chromedriver/chrome/chrome_desktop_impl.cc
diff --git a/chrome/test/chromedriver/chrome/chrome_desktop_impl.cc b/chrome/test/chromedriver/chrome/chrome_desktop_impl.cc
index f312c57e6a619257d4f17fd457a72701cf5a77a1..2a5556408b1468ffb5478da7250650b5b1f7b5b7 100644
--- a/chrome/test/chromedriver/chrome/chrome_desktop_impl.cc
+++ b/chrome/test/chromedriver/chrome/chrome_desktop_impl.cc
@@ -27,15 +27,15 @@
namespace {
-bool KillProcess(base::ProcessHandle process_id, bool kill_gracefully) {
+bool KillProcess(const base::Process& process, bool kill_gracefully) {
#if defined(OS_POSIX)
if (!kill_gracefully) {
- kill(process_id, SIGKILL);
+ kill(process.Pid(), SIGKILL);
base::TimeTicks deadline =
base::TimeTicks::Now() + base::TimeDelta::FromSeconds(30);
while (base::TimeTicks::Now() < deadline) {
- pid_t pid = HANDLE_EINTR(waitpid(process_id, NULL, WNOHANG));
- if (pid == process_id)
+ pid_t pid = HANDLE_EINTR(waitpid(process.Pid(), NULL, WNOHANG));
+ if (pid == process.Pid())
return true;
if (pid == -1) {
if (errno == ECHILD) {
@@ -43,7 +43,7 @@ bool KillProcess(base::ProcessHandle process_id, bool kill_gracefully) {
// the same pid, causing the process state to get cleaned up.
return true;
}
- LOG(WARNING) << "Error waiting for process " << process_id;
+ LOG(WARNING) << "Error waiting for process " << process.Pid();
}
base::PlatformThread::Sleep(base::TimeDelta::FromMilliseconds(50));
}
@@ -51,9 +51,9 @@ bool KillProcess(base::ProcessHandle process_id, bool kill_gracefully) {
}
#endif
- if (!base::KillProcess(process_id, 0, true)) {
+ if (!process.Terminate(0, true)) {
int exit_code;
- return base::GetTerminationStatus(process_id, &exit_code) !=
+ return base::GetTerminationStatus(process.Handle(), &exit_code) !=
base::TERMINATION_STATUS_STILL_RUNNING;
}
return true;
@@ -173,7 +173,7 @@ Status ChromeDesktopImpl::QuitImpl() {
// everything back out to the user data directory and exit cleanly.If
// we're using a temporary user data directory, we're going to delete
// the temporary directory anyway, so just send SIGKILL immediately.
- if (!KillProcess(process_.Handle(), !user_data_dir_.IsValid()))
+ if (!KillProcess(process_, !user_data_dir_.IsValid()))
return Status(kUnknownError, "cannot kill Chrome");
return Status(kOk);
}

Powered by Google App Engine
This is Rietveld 408576698