summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-10-05 22:33:49 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-10-07 18:19:42 (GMT)
commit28749903b67d71b35f6ff74dab7c6db1a648a1c8 (patch)
treea976993929c37e41cef23d593fa5572b20cde541 /Source
parent6c02f62f75735f6e60549ef53b06bd87e843bc35 (diff)
downloadCMake-28749903b67d71b35f6ff74dab7c6db1a648a1c8.zip
CMake-28749903b67d71b35f6ff74dab7c6db1a648a1c8.tar.gz
CMake-28749903b67d71b35f6ff74dab7c6db1a648a1c8.tar.bz2
cmState: Internalize the initialization of a snapshot from its parent.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmMakefile.cxx2
-rw-r--r--Source/cmState.cxx2
-rw-r--r--Source/cmState.h5
3 files changed, 5 insertions, 4 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 2c9dfbb..c060505 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -1761,8 +1761,6 @@ void cmMakefile::AddSubDirectory(const std::string& srcPath,
this->ContextStack.back()->Name,
this->ContextStack.back()->Line);
- newSnapshot.InitializeFromParent();
-
newSnapshot.GetDirectory().SetCurrentSource(srcPath);
newSnapshot.GetDirectory().SetCurrentBinary(binPath);
diff --git a/Source/cmState.cxx b/Source/cmState.cxx
index ce9ff32..db7519b 100644
--- a/Source/cmState.cxx
+++ b/Source/cmState.cxx
@@ -805,8 +805,10 @@ cmState::CreateBuildsystemDirectorySnapshot(Snapshot originSnapshot,
pos->Parent = origin;
pos->Root = origin;
pos->Vars = this->VarTree.Extend(origin);
+
cmState::Snapshot snapshot = cmState::Snapshot(this, pos);
originSnapshot.Position->BuildSystemDirectory->Children.push_back(snapshot);
+ snapshot.InitializeFromParent();
return snapshot;
}
diff --git a/Source/cmState.h b/Source/cmState.h
index 99e537c..1ffc4bf 100644
--- a/Source/cmState.h
+++ b/Source/cmState.h
@@ -75,8 +75,6 @@ public:
Snapshot GetCallStackParent() const;
SnapshotType GetType() const;
- void InitializeFromParent();
-
void SetPolicy(cmPolicies::PolicyID id, cmPolicies::PolicyStatus status);
cmPolicies::PolicyStatus GetPolicy(cmPolicies::PolicyID id) const;
bool HasDefinedPolicyCMP0011();
@@ -105,6 +103,9 @@ public:
friend class cmState;
friend class Directory;
friend struct StrictWeakOrder;
+
+ void InitializeFromParent();
+
cmState* State;
cmState::PositionType Position;
};