CPack invalid CMake generator

Case where CPACK_CMAKE_GENERATOR value is non existent or
or contains multiple words that were not quoted was not
handled and produced a segmentation fault.
This commit is contained in:
Domen Vrankar 2015-01-02 10:46:08 +01:00
parent ec31926d24
commit f89e41c3e7
1 changed files with 8 additions and 0 deletions

View File

@ -628,6 +628,14 @@ int cmCPackGenerator::InstallProjectViaInstallCMakeProjects(
cmGlobalGenerator* globalGenerator
= this->MakefileMap->GetCMakeInstance()->CreateGlobalGenerator(
cmakeGenerator);
if ( !globalGenerator )
{
cmCPackLogger(cmCPackLog::LOG_ERROR,
"Specified package generator not found. "
"CPACK_CMAKE_GENERATOR value is invalid."
<< std::endl);
return 0;
}
// set the global flag for unix style paths on cmSystemTools as
// soon as the generator is set. This allows gmake to be used
// on windows.