summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-08-24 17:24:59 (GMT)
committerKitware Robot <kwrobot@kitware.com>2018-08-24 17:34:06 (GMT)
commit7b148e7a3037a7a7d852244e391a7350d8e75d64 (patch)
tree19fa126cc35e4a86951784ec64c6943f5c97c36a
parent6a8b65c04237ff2dfe004dc1ce29b725666f2758 (diff)
parent6f3b9e8b9506b4631b70cf506152defa8f9e54e0 (diff)
downloadCMake-7b148e7a3037a7a7d852244e391a7350d8e75d64.zip
CMake-7b148e7a3037a7a7d852244e391a7350d8e75d64.tar.gz
CMake-7b148e7a3037a7a7d852244e391a7350d8e75d64.tar.bz2
Merge topic 'state-reset-glob'
6f3b9e8b95 cmState: Clear GlobVerificationManager state on Reset Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2278
-rw-r--r--Source/cmGlobVerificationManager.cxx7
-rw-r--r--Source/cmGlobVerificationManager.h3
-rw-r--r--Source/cmState.cxx1
3 files changed, 11 insertions, 0 deletions
diff --git a/Source/cmGlobVerificationManager.cxx b/Source/cmGlobVerificationManager.cxx
index d8c854c..e8959f2 100644
--- a/Source/cmGlobVerificationManager.cxx
+++ b/Source/cmGlobVerificationManager.cxx
@@ -170,3 +170,10 @@ void cmGlobVerificationManager::AddCacheEntry(
value.Backtraces.emplace_back(variable, backtrace);
}
}
+
+void cmGlobVerificationManager::Reset()
+{
+ this->Cache.clear();
+ this->VerifyScript.clear();
+ this->VerifyStamp.clear();
+}
diff --git a/Source/cmGlobVerificationManager.h b/Source/cmGlobVerificationManager.h
index 4508602..cf04c97 100644
--- a/Source/cmGlobVerificationManager.h
+++ b/Source/cmGlobVerificationManager.h
@@ -37,6 +37,9 @@ protected:
const std::string& variable,
const cmListFileBacktrace& bt);
+ ///! Clear the glob cache for state reset.
+ void Reset();
+
///! Check targets should be written in generated build system.
bool DoWriteVerifyTarget() const;
diff --git a/Source/cmState.cxx b/Source/cmState.cxx
index dcf6ea0..5651594 100644
--- a/Source/cmState.cxx
+++ b/Source/cmState.cxx
@@ -267,6 +267,7 @@ cmStateSnapshot cmState::Reset()
{
this->GlobalProperties.clear();
this->PropertyDefinitions.clear();
+ this->GlobVerificationManager->Reset();
cmStateDetail::PositionType pos = this->SnapshotData.Truncate();
this->ExecutionListFiles.Truncate();