summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmMakefile.cxx22
1 files changed, 16 insertions, 6 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 25671c9..7c863d1 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -90,20 +90,30 @@ const char* cmMakefile::GetReleaseVersion()
unsigned int cmMakefile::GetCacheMajorVersion()
{
- if(!this->GetCacheManager()->GetCacheValue("CMAKE_CACHE_MAJOR_VERSION"))
+ if(const char* vstr =
+ this->GetCacheManager()->GetCacheValue("CMAKE_CACHE_MAJOR_VERSION"))
{
- return 0;
+ unsigned int v=0;
+ if(sscanf(vstr, "%u", &v) == 1)
+ {
+ return v;
+ }
}
- return atoi(this->GetCacheManager()->GetCacheValue("CMAKE_CACHE_MAJOR_VERSION"));
+ return 0;
}
unsigned int cmMakefile::GetCacheMinorVersion()
{
- if(!this->GetCacheManager()->GetCacheValue("Cmake_Cache_MINOR_VERSION"))
+ if(const char* vstr =
+ this->GetCacheManager()->GetCacheValue("CMAKE_CACHE_MINOR_VERSION"))
{
- return 0;
+ unsigned int v=0;
+ if(sscanf(vstr, "%u", &v) == 1)
+ {
+ return v;
+ }
}
- return atoi(this->GetCacheManager()->GetCacheValue("CMAKE_CACHE_MINOR_VERSION"));
+ return 0;
}