diff options
author | Bryon Bean <bryon.bean@kitware.com> | 2017-10-23 12:16:45 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2018-01-10 15:19:14 (GMT) |
commit | 3dd2edf4ab94f5044b73b20151592c8e94a5160a (patch) | |
tree | 06fa23b1b2e78bd60231c50786fa2402a0bb376a /Source/CTest/cmProcess.cxx | |
parent | 5238e6db70d275e42048479b737781fc97d82ea1 (diff) | |
download | CMake-3dd2edf4ab94f5044b73b20151592c8e94a5160a.zip CMake-3dd2edf4ab94f5044b73b20151592c8e94a5160a.tar.gz CMake-3dd2edf4ab94f5044b73b20151592c8e94a5160a.tar.bz2 |
cmProcess: Use explicit enum for process state
Translate the values from KWSys Process.
Diffstat (limited to 'Source/CTest/cmProcess.cxx')
-rw-r--r-- | Source/CTest/cmProcess.cxx | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/Source/CTest/cmProcess.cxx b/Source/CTest/cmProcess.cxx index a599454..fac0df9 100644 --- a/Source/CTest/cmProcess.cxx +++ b/Source/CTest/cmProcess.cxx @@ -156,13 +156,29 @@ int cmProcess::GetNextOutputLine(std::string& line, return cmsysProcess_Pipe_None; } -// return the process status -int cmProcess::GetProcessStatus() +cmProcess::State cmProcess::GetProcessStatus() { - if (!this->Process) { - return cmsysProcess_State_Exited; + if (this->Process) { + switch (cmsysProcess_GetState(this->Process)) { + case cmsysProcess_State_Starting: + return State::Starting; + case cmsysProcess_State_Error: + return State::Error; + case cmsysProcess_State_Exception: + return State::Exception; + case cmsysProcess_State_Executing: + return State::Executing; + case cmsysProcess_State_Expired: + return State::Expired; + case cmsysProcess_State_Killed: + return State::Killed; + case cmsysProcess_State_Disowned: + return State::Disowned; + default: // case cmsysProcess_State_Exited: + break; + } } - return cmsysProcess_GetState(this->Process); + return State::Exited; } void cmProcess::ChangeTimeout(std::chrono::duration<double> t) |