summaryrefslogtreecommitdiffstats
path: root/Source/cmTest.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-06-06 07:41:30 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-06-07 07:29:31 (GMT)
commit5181fae264444ad7736614ceb1e78c51def2b97c (patch)
tree6c0577c3bc103de8eef07431260fcb5d1f495d43 /Source/cmTest.cxx
parent3ac4b90bfdcca97f1f63056c97afee38cf66ea12 (diff)
downloadCMake-5181fae264444ad7736614ceb1e78c51def2b97c.zip
CMake-5181fae264444ad7736614ceb1e78c51def2b97c.tar.gz
CMake-5181fae264444ad7736614ceb1e78c51def2b97c.tar.bz2
cmPropertyMap: Remove chaining logic.
The chaining logic doesn't belong to the container, and the CMakeInstance pointer doesn't need to be in cmPropertyMap. Size goes from 56 to 48 bytes with GNU libstdc++-5.1.
Diffstat (limited to 'Source/cmTest.cxx')
-rw-r--r--Source/cmTest.cxx14
1 files changed, 8 insertions, 6 deletions
diff --git a/Source/cmTest.cxx b/Source/cmTest.cxx
index c606859..6fcd0dc 100644
--- a/Source/cmTest.cxx
+++ b/Source/cmTest.cxx
@@ -21,7 +21,6 @@ cmTest::cmTest(cmMakefile* mf)
{
this->Makefile = mf;
this->OldStyle = true;
- this->Properties.SetCMakeInstance(mf->GetCMakeInstance());
}
//----------------------------------------------------------------------------
@@ -50,12 +49,15 @@ void cmTest::SetCommand(std::vector<std::string> const& command)
//----------------------------------------------------------------------------
const char *cmTest::GetProperty(const std::string& prop) const
{
- bool chain = false;
- const char *retVal =
- this->Properties.GetPropertyValue(prop, cmProperty::TEST, chain);
- if (chain)
+ const char *retVal = this->Properties.GetPropertyValue(prop);
+ if (!retVal)
{
- return this->Makefile->GetProperty(prop,cmProperty::TEST);
+ const bool chain = this->Makefile->GetState()->
+ IsPropertyChained(prop, cmProperty::TEST);
+ if (chain)
+ {
+ return this->Makefile->GetProperty(prop, chain);
+ }
}
return retVal;
}