From 32e629231c321a1716879b9cd7d58ad043d7f229 Mon Sep 17 00:00:00 2001 From: bg45 Date: Sat, 23 Sep 2017 09:48:31 -0400 Subject: [PATCH] Switched to .Net Standard (yet again...) Changed every PCL call to WinRt WIP on CompositeKey --- .../Serialization/IOConnectionInfo.cs | 5 +-- ModernKeePassLib/Serialization/KdbxFile.cs | 36 ++++++++++--------- 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/ModernKeePassLib/Serialization/IOConnectionInfo.cs b/ModernKeePassLib/Serialization/IOConnectionInfo.cs index 6bab8be..6d00cbc 100644 --- a/ModernKeePassLib/Serialization/IOConnectionInfo.cs +++ b/ModernKeePassLib/Serialization/IOConnectionInfo.cs @@ -310,12 +310,13 @@ namespace ModernKeePassLibPCL.Serialization { #if ModernKeePassLibPCL if(IsLocalFile()) - return (FileSystem.Current.GetFileFromPathAsync(m_strUrl).Result != null); + //return (FileSystem.Current.GetFileFromPathAsync(m_strUrl).Result != null); + return StorageFile.GetFileFromPathAsync(m_strUrl).GetResults() != null; #else if(IsLocalFile()) return File.Exists(m_strUrl); #endif - return true; + return true; } public bool IsLocalFile() diff --git a/ModernKeePassLib/Serialization/KdbxFile.cs b/ModernKeePassLib/Serialization/KdbxFile.cs index ec5b8d2..e25ad3c 100644 --- a/ModernKeePassLib/Serialization/KdbxFile.cs +++ b/ModernKeePassLib/Serialization/KdbxFile.cs @@ -368,33 +368,37 @@ namespace ModernKeePassLibPCL.Serialization string strPath; int iTry = 1; - do - { - strPath = UrlUtil.EnsureTerminatingSeparator(strSaveDir, false); + do + { + strPath = UrlUtil.EnsureTerminatingSeparator(strSaveDir, false); - string strExt = UrlUtil.GetExtension(strName); - string strDesc = UrlUtil.StripExtension(strName); + string strExt = UrlUtil.GetExtension(strName); + string strDesc = UrlUtil.StripExtension(strName); - strPath += strDesc; - if(iTry > 1) - strPath += " (" + iTry.ToString(NumberFormatInfo.InvariantInfo) + - ")"; + strPath += strDesc; + if (iTry > 1) + strPath += " (" + iTry.ToString(NumberFormatInfo.InvariantInfo) + + ")"; - if(!string.IsNullOrEmpty(strExt)) strPath += "." + strExt; + if (!string.IsNullOrEmpty(strExt)) strPath += "." + strExt; - ++iTry; - } + ++iTry; + } #if ModernKeePassLibPCL - while(FileSystem.Current.GetFileFromPathAsync(strPath).Result != null); + //while(FileSystem.Current.GetFileFromPathAsync(strPath).Result != null); + while (StorageFile.GetFileFromPathAsync(strPath).GetResults() != null); #else while(File.Exists(strPath)); #endif #if ModernKeePassLibPCL byte[] pbData = pb.ReadData(); - var file = FileSystem.Current.GetFileFromPathAsync(strPath).Result; - using (var stream = file.OpenAsync(FileAccess.ReadAndWrite).Result) { - stream.Write (pbData, 0, pbData.Length); + /*var file = FileSystem.Current.GetFileFromPathAsync(strPath).Result; + using (var stream = file.OpenAsync(FileAccess.ReadAndWrite).Result) {*/ + var file = StorageFile.GetFileFromPathAsync(strPath).GetResults(); + using (var stream = file.OpenAsync(FileAccessMode.ReadWrite).GetResults().AsStream()) + { + stream.Write (pbData, 0, pbData.Length); } MemUtil.ZeroByteArray(pbData); #elif !KeePassLibSD