Browse Source

Fix water File::copyDirectoryTo() to take into account symlinks

Signed-off-by: falkTX <falktx@falktx.com>
tags/v2.2.0-RC1
falkTX 4 years ago
parent
commit
ea3f36ed9d
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
1 changed files with 15 additions and 2 deletions
  1. +15
    -2
      source/modules/water/files/File.cpp

+ 15
- 2
source/modules/water/files/File.cpp View File

@@ -332,8 +332,21 @@ bool File::copyDirectoryTo (const File& newDirectory) const
findChildFiles (subFiles, File::findFiles, false);
for (int i = 0; i < subFiles.size(); ++i)
if (! subFiles.getReference(i).copyFileTo (newDirectory.getChildFile (subFiles.getReference(i).getFileName())))
return false;
{
const File& src (subFiles.getReference(i));
const File& dst (newDirectory.getChildFile (src.getFileName()));
if (src.isSymbolicLink())
{
if (! src.getLinkedTarget().createSymbolicLink (dst, true))
return false;
}
else
{
if (! src.copyFileTo (dst))
return false;
}
}
subFiles.clear();
findChildFiles (subFiles, File::findDirectories, false);


Loading…
Cancel
Save