summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestMultiProcessHandler.cxx
diff options
context:
space:
mode:
authorNils Gladitz <nilsgladitz@gmail.com>2013-10-23 19:47:32 (GMT)
committerNils Gladitz <nilsgladitz@gmail.com>2013-10-25 19:39:58 (GMT)
commitff59365f8bdcb302f55d4fc882cae057a70acd4b (patch)
tree10a0320b6a9aebb83dfd897dddf727a776b9b333 /Source/CTest/cmCTestMultiProcessHandler.cxx
parent7a665ae7e375db01e3eb89bb65967d03103cf164 (diff)
downloadCMake-ff59365f8bdcb302f55d4fc882cae057a70acd4b.zip
CMake-ff59365f8bdcb302f55d4fc882cae057a70acd4b.tar.gz
CMake-ff59365f8bdcb302f55d4fc882cae057a70acd4b.tar.bz2
CTest: fix dashboard issues associated with the ctest-fix-run-serial topic
Diffstat (limited to 'Source/CTest/cmCTestMultiProcessHandler.cxx')
-rw-r--r--Source/CTest/cmCTestMultiProcessHandler.cxx27
1 files changed, 20 insertions, 7 deletions
diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx b/Source/CTest/cmCTestMultiProcessHandler.cxx
index 3dd446b..2cae179 100644
--- a/Source/CTest/cmCTestMultiProcessHandler.cxx
+++ b/Source/CTest/cmCTestMultiProcessHandler.cxx
@@ -470,14 +470,18 @@ void cmCTestMultiProcessHandler::CreateTestCostList()
priorityStack.push_back(TestSet());
TestSet &currentSet = priorityStack.back();
- for(TestSet::iterator i = previousSet.begin();
+ for(TestSet::const_iterator i = previousSet.begin();
i != previousSet.end(); ++i)
{
TestSet const& dependencies = this->Tests[*i];
- currentSet.insert(dependencies.begin(), dependencies.end());
+ for(TestSet::const_iterator j = dependencies.begin();
+ j != dependencies.end(); ++j)
+ {
+ currentSet.insert(*j);
+ }
}
- for(TestSet::iterator i = currentSet.begin();
+ for(TestSet::const_iterator i = currentSet.begin();
i != currentSet.end(); ++i)
{
previousSet.erase(*i);
@@ -492,15 +496,24 @@ void cmCTestMultiProcessHandler::CreateTestCostList()
for(std::list<TestSet>::reverse_iterator i = priorityStack.rbegin();
i != priorityStack.rend(); ++i)
{
- TestSet &currentSet = *i;
+ TestSet const& currentSet = *i;
TestComparator comp(this);
TestList sortedCopy;
- sortedCopy.insert(sortedCopy.end(), currentSet.begin(), currentSet.end());
+
+ for(TestSet::const_iterator j = currentSet.begin();
+ j != currentSet.end(); ++j)
+ {
+ sortedCopy.push_back(*j);
+ }
+
std::stable_sort(sortedCopy.begin(), sortedCopy.end(), comp);
- this->SortedTests.insert(this->SortedTests.end(),
- sortedCopy.begin(), sortedCopy.end());
+ for(TestList::const_iterator j = sortedCopy.begin();
+ j != sortedCopy.end(); ++j)
+ {
+ this->SortedTests.push_back(*j);
+ }
}
}