diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2010-06-22 13:55:09 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2010-06-22 13:55:09 (GMT) |
commit | 8f8c1edca2f577e2fc0507186c033cdfd2b28d4f (patch) | |
tree | 949e7bc0bfb58df40e64a1fb37a778af854a0d2a /Source | |
parent | d7770578d124bad230690f5c5963ee5517279acc (diff) | |
download | CMake-8f8c1edca2f577e2fc0507186c033cdfd2b28d4f.zip CMake-8f8c1edca2f577e2fc0507186c033cdfd2b28d4f.tar.gz CMake-8f8c1edca2f577e2fc0507186c033cdfd2b28d4f.tar.bz2 |
Fix for bug #10859, ctest exit exception incorrectly reported.
CTest was using the return value from the program instead of the
exit exception value for the process.
Diffstat (limited to 'Source')
-rw-r--r-- | Source/CTest/cmCTestRunTest.cxx | 2 | ||||
-rw-r--r-- | Source/CTest/cmProcess.cxx | 6 | ||||
-rw-r--r-- | Source/CTest/cmProcess.h | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/Source/CTest/cmCTestRunTest.cxx b/Source/CTest/cmCTestRunTest.cxx index 4c9675b..bd644c6 100644 --- a/Source/CTest/cmCTestRunTest.cxx +++ b/Source/CTest/cmCTestRunTest.cxx @@ -220,7 +220,7 @@ bool cmCTestRunTest::EndTest(size_t completed, size_t total, bool started) { outputTestErrorsToConsole = this->CTest->OutputTestOutputOnTestFailure; cmCTestLog(this->CTest, HANDLER_OUTPUT, "***Exception: "); - switch ( retVal ) + switch(this->TestProcess->GetExitException()) { case cmsysProcess_Exception_Fault: cmCTestLog(this->CTest, HANDLER_OUTPUT, "SegFault"); diff --git a/Source/CTest/cmProcess.cxx b/Source/CTest/cmProcess.cxx index 9aa40d6..0ee631f 100644 --- a/Source/CTest/cmProcess.cxx +++ b/Source/CTest/cmProcess.cxx @@ -264,3 +264,9 @@ int cmProcess::ReportStatus() return result; } + + +int cmProcess::GetExitException() +{ + return cmsysProcess_GetExitException(this->Process); +} diff --git a/Source/CTest/cmProcess.h b/Source/CTest/cmProcess.h index 01dacf9..ff99ca2 100644 --- a/Source/CTest/cmProcess.h +++ b/Source/CTest/cmProcess.h @@ -43,7 +43,7 @@ public: void SetId(int id) { this->Id = id;} int GetExitValue() { return this->ExitValue;} double GetTotalTime() { return this->TotalTime;} - + int GetExitException(); /** * Read one line of output but block for no more than timeout. * Returns: |