summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestMultiProcessHandler.cxx
diff options
context:
space:
mode:
authorZach Mullen <zach.mullen@kitware.com>2010-06-15 14:29:35 (GMT)
committerZach Mullen <zach.mullen@kitware.com>2010-06-15 14:29:35 (GMT)
commit960dc2b10ff8651c5c7f1be566855c8440effd2b (patch)
tree8922f6d1865bd2c00e8aba0329451e58b7aaddd5 /Source/CTest/cmCTestMultiProcessHandler.cxx
parentd714b18ac5f415e15c5e03bf8f6aaeaf45e143f5 (diff)
downloadCMake-960dc2b10ff8651c5c7f1be566855c8440effd2b.zip
CMake-960dc2b10ff8651c5c7f1be566855c8440effd2b.tar.gz
CMake-960dc2b10ff8651c5c7f1be566855c8440effd2b.tar.bz2
Do not exit if stoptime is passed.
Diffstat (limited to 'Source/CTest/cmCTestMultiProcessHandler.cxx')
-rw-r--r--Source/CTest/cmCTestMultiProcessHandler.cxx15
1 files changed, 15 insertions, 0 deletions
diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx b/Source/CTest/cmCTestMultiProcessHandler.cxx
index 8a69780..9b8cef5 100644
--- a/Source/CTest/cmCTestMultiProcessHandler.cxx
+++ b/Source/CTest/cmCTestMultiProcessHandler.cxx
@@ -23,6 +23,7 @@ cmCTestMultiProcessHandler::cmCTestMultiProcessHandler()
this->ParallelLevel = 1;
this->Completed = 0;
this->RunningCount = 0;
+ this->StopTimePassed = false;
}
cmCTestMultiProcessHandler::~cmCTestMultiProcessHandler()
@@ -69,6 +70,10 @@ void cmCTestMultiProcessHandler::RunTests()
this->StartNextTests();
while(this->Tests.size() != 0)
{
+ if(this->StopTimePassed)
+ {
+ return;
+ }
this->CheckOutput();
this->StartNextTests();
}
@@ -102,6 +107,12 @@ void cmCTestMultiProcessHandler::StartTestProcess(int test)
{
this->RunningTests.insert(testRun);
}
+ else if(testRun->IsStopTimePassed())
+ {
+ this->StopTimePassed = true;
+ delete testRun;
+ return;
+ }
else
{
this->UnlockResources(test);
@@ -251,6 +262,10 @@ void cmCTestMultiProcessHandler::StartNextTests()
}
if(this->StartTest(*test))
{
+ if(this->StopTimePassed)
+ {
+ return;
+ }
numToStart -= processors;
this->RunningCount += processors;
}