From 772cd5aaef024a3c70e367033e02e91fee038703 Mon Sep 17 00:00:00 2001 From: Kenneth Hsu Date: Sat, 14 Sep 2019 10:44:12 -0700 Subject: [PATCH] Use dedicated method to create symbolic links to directories. The methods that accepted a SymbolicLinkTarget parameter have been deprecated. --- Duplicati/Library/Common/IO/SystemIOWindows.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Duplicati/Library/Common/IO/SystemIOWindows.cs b/Duplicati/Library/Common/IO/SystemIOWindows.cs index 7949fcc55..31a85b499 100644 --- a/Duplicati/Library/Common/IO/SystemIOWindows.cs +++ b/Duplicati/Library/Common/IO/SystemIOWindows.cs @@ -553,10 +553,14 @@ namespace Duplicati.Library.Common.IO if (FileExists(symlinkfile) || DirectoryExists(symlinkfile)) throw new System.IO.IOException(string.Format("File already exists: {0}", symlinkfile)); - Alphaleonis.Win32.Filesystem.File.CreateSymbolicLink(PrefixWithUNC(symlinkfile), - target, - asDir ? Alphaleonis.Win32.Filesystem.SymbolicLinkTarget.Directory : Alphaleonis.Win32.Filesystem.SymbolicLinkTarget.File, - AlphaFS.PathFormat.LongFullPath); + if (asDir) + { + Alphaleonis.Win32.Filesystem.Directory.CreateSymbolicLink(PrefixWithUNC(symlinkfile), target, AlphaFS.PathFormat.LongFullPath); + } + else + { + Alphaleonis.Win32.Filesystem.File.CreateSymbolicLink(PrefixWithUNC(symlinkfile), target, AlphaFS.PathFormat.LongFullPath); + } //Sadly we do not get a notification if the creation fails :( System.IO.FileAttributes attr = 0;