cmake: Do not open directories as scripts (#14966)
Check if a file path is a directory before opening it. Extend the RunCMake.CommandLine test with a case running "cmake -P" on a directory.
This commit is contained in:
parent
9e8fa1043c
commit
b1c113d9a7
|
@ -142,7 +142,8 @@ bool cmListFile::ParseFile(const char* filename,
|
|||
bool topLevel,
|
||||
cmMakefile *mf)
|
||||
{
|
||||
if(!cmSystemTools::FileExists(filename))
|
||||
if(!cmSystemTools::FileExists(filename) ||
|
||||
cmSystemTools::FileIsDirectory(filename))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
1
|
|
@ -0,0 +1 @@
|
|||
^CMake Error: Error processing file: .*/Tests/RunCMake/CommandLine$
|
|
@ -35,3 +35,5 @@ run_cmake_command(E_sleep-no-args ${CMAKE_COMMAND} -E sleep)
|
|||
run_cmake_command(E_sleep-bad-arg1 ${CMAKE_COMMAND} -E sleep x)
|
||||
run_cmake_command(E_sleep-bad-arg2 ${CMAKE_COMMAND} -E sleep 1 -1)
|
||||
run_cmake_command(E_sleep-one-tenth ${CMAKE_COMMAND} -E sleep 0.1)
|
||||
|
||||
run_cmake_command(P_directory ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR})
|
||||
|
|
Loading…
Reference in New Issue