Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/duplicati/duplicati.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrwtsn32x <rodney@savard.org>2019-12-26 19:03:06 +0300
committerdrwtsn32x <rodney@savard.org>2019-12-26 19:03:06 +0300
commitddce687b147e787b15c497932a1b266de5730980 (patch)
treeb003f17c31f64f34556080506eabb6dff96a913e /Duplicati/Library/Common/IO
parentaa7d4150b34d07d3aeb1db07bda411f38ee27c92 (diff)
don't read rules unless we are restoring permissions
Diffstat (limited to 'Duplicati/Library/Common/IO')
-rw-r--r--Duplicati/Library/Common/IO/SystemIOWindows.cs13
1 files changed, 7 insertions, 6 deletions
diff --git a/Duplicati/Library/Common/IO/SystemIOWindows.cs b/Duplicati/Library/Common/IO/SystemIOWindows.cs
index 196d23528..0fc62b896 100644
--- a/Duplicati/Library/Common/IO/SystemIOWindows.cs
+++ b/Duplicati/Library/Common/IO/SystemIOWindows.cs
@@ -508,9 +508,10 @@ namespace Duplicati.Library.Common.IO
var isDirTarget = path.EndsWith(DIRSEP, StringComparison.Ordinal);
var targetpath = isDirTarget ? path.Substring(0, path.Length - 1) : path;
- FileSystemSecurity rules = isDirTarget ? GetAccessControlDir(targetpath) : GetAccessControlFile(targetpath);
if (restorePermissions)
{
+ FileSystemSecurity rules = isDirTarget ? GetAccessControlDir(targetpath) : GetAccessControlFile(targetpath);
+
if (data.ContainsKey("win-ext:accessrulesprotected"))
{
var content = DeserializeObject<FileSystemAccessProtected>(data["win-ext:accessrulesprotected"]);
@@ -544,12 +545,12 @@ namespace Duplicati.Library.Common.IO
if (ex != null)
throw ex;
-
- if (isDirTarget)
- SetAccessControlDir(targetpath, (DirectorySecurity)rules);
- else
- SetAccessControlFile(targetpath, (FileSecurity)rules);
}
+
+ if (isDirTarget)
+ SetAccessControlDir(targetpath, (DirectorySecurity)rules);
+ else
+ SetAccessControlFile(targetpath, (FileSecurity)rules);
}
}