summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorDavid Cole <david.cole@kitware.com>2011-09-07 19:39:03 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2011-09-07 19:39:03 (GMT)
commit1a5c99581eddd677ba30653d0cb68161a4e0cb8f (patch)
treef054219b0087113f29064159869e8d805361d632 /Source
parent07eb08439ddeaaab1115acaf717b52319efdfb13 (diff)
parent7b8dcdd17312a7c3ed731743468136b0ea89a6c7 (diff)
downloadCMake-1a5c99581eddd677ba30653d0cb68161a4e0cb8f.zip
CMake-1a5c99581eddd677ba30653d0cb68161a4e0cb8f.tar.gz
CMake-1a5c99581eddd677ba30653d0cb68161a4e0cb8f.tar.bz2
Merge topic 'fix-12284-cpack-symlinks'
7b8dcdd CPack: Do not recurse through directory symlinks (#12284) d78bdb2 CMake: Write symlinks to directories as files in archives (#12284)
Diffstat (limited to 'Source')
-rw-r--r--Source/CPack/cmCPackGenerator.cxx1
-rw-r--r--Source/cmArchiveWrite.cxx3
2 files changed, 3 insertions, 1 deletions
diff --git a/Source/CPack/cmCPackGenerator.cxx b/Source/CPack/cmCPackGenerator.cxx
index 0e4acd5..083279f 100644
--- a/Source/CPack/cmCPackGenerator.cxx
+++ b/Source/CPack/cmCPackGenerator.cxx
@@ -1000,6 +1000,7 @@ int cmCPackGenerator::DoPackage()
std::string findExpr = tempDirectory;
findExpr += "/*";
gl.RecurseOn();
+ gl.SetRecurseThroughSymlinks(false);
if ( !gl.FindFiles(findExpr) )
{
cmCPackLogger(cmCPackLog::LOG_ERROR,
diff --git a/Source/cmArchiveWrite.cxx b/Source/cmArchiveWrite.cxx
index 25dc8ba..eab8a59 100644
--- a/Source/cmArchiveWrite.cxx
+++ b/Source/cmArchiveWrite.cxx
@@ -180,7 +180,8 @@ bool cmArchiveWrite::AddPath(const char* path,
{
return false;
}
- if(!cmSystemTools::FileIsDirectory(path))
+ if(!cmSystemTools::FileIsDirectory(path) ||
+ cmSystemTools::FileIsSymlink(path))
{
return true;
}