From ddce687b147e787b15c497932a1b266de5730980 Mon Sep 17 00:00:00 2001 From: drwtsn32x Date: Thu, 26 Dec 2019 08:03:06 -0800 Subject: don't read rules unless we are restoring permissions --- Duplicati/Library/Common/IO/SystemIOWindows.cs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'Duplicati/Library/Common/IO') 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(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); } } -- cgit v1.2.3