|
|
@@ -185,6 +185,7 @@ bool cmCacheManager::LoadCache(const char* path,
|
|
|
strcmp(entryKey.c_str() + (entryKey.size() - strlen("-ADVANCED")),
|
|
|
"-ADVANCED") == 0 )
|
|
|
{
|
|
|
+ std::string value = e.m_Value;
|
|
|
std::string akey = entryKey.substr(0, (entryKey.size() - strlen("-ADVANCED")));
|
|
|
cmCacheManager::CacheIterator it = this->GetCacheIterator(akey.c_str());
|
|
|
if ( it.IsAtEnd() )
|
|
|
@@ -192,10 +193,11 @@ bool cmCacheManager::LoadCache(const char* path,
|
|
|
e.m_Type = cmCacheManager::UNINITIALIZED;
|
|
|
m_Cache[akey] = e;
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- it.SetProperty("ADVANCED", true);
|
|
|
- }
|
|
|
+ if (!it.Find(akey.c_str()))
|
|
|
+ {
|
|
|
+ cmSystemTools::Error("Internal CMake error when reading cache");
|
|
|
+ }
|
|
|
+ it.SetProperty("ADVANCED", value.c_str());
|
|
|
}
|
|
|
else
|
|
|
{
|