summaryrefslogtreecommitdiffstats
path: root/Source/CTest
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-02-15 18:43:34 (GMT)
committerBrad King <brad.king@kitware.com>2017-02-15 19:44:37 (GMT)
commit51849bbab8b1b6b8299dc08e98ca1524cc1e168a (patch)
tree4ce055c2d54abdceb3ac45b09ac07692933030a6 /Source/CTest
parent2b1cdd85b8943059e5f2b27735df261743749342 (diff)
downloadCMake-51849bbab8b1b6b8299dc08e98ca1524cc1e168a.zip
CMake-51849bbab8b1b6b8299dc08e98ca1524cc1e168a.tar.gz
CMake-51849bbab8b1b6b8299dc08e98ca1524cc1e168a.tar.bz2
ctest_update: Fix svn log and external loading
Since commit v3.7.0-rc1~132^2 (CTestSVN: Fix segfault when CTEST_UPDATE_VERSION_ONLY is enabled, 2016-09-12) we do not properly extract svn log or externals. After updating we erase the information that was loaded before updating and can no longer log the changes between revisions to extract authors. Fix this by only loading the repository information once, whether needed by `NoteOldRevision`, `NoteNewRevision`, or both. Fixes: #12630, #16646
Diffstat (limited to 'Source/CTest')
-rw-r--r--Source/CTest/cmCTestSVN.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/CTest/cmCTestSVN.cxx b/Source/CTest/cmCTestSVN.cxx
index fc405ca..410e0d4 100644
--- a/Source/CTest/cmCTestSVN.cxx
+++ b/Source/CTest/cmCTestSVN.cxx
@@ -523,8 +523,11 @@ private:
void cmCTestSVN::LoadRepositories()
{
+ if (!this->Repositories.empty()) {
+ return;
+ }
+
// Info for root repository
- this->Repositories.clear();
this->Repositories.push_back(SVNInfo(""));
this->RootInfo = &(this->Repositories.back());