Horizon

Subversion Repositories:
Compare Path: Rev
With Path: Rev
?path1? @ 24  →  ?path2? @ 25
/Horizon/Database/SnapshotDatabase.cs
@@ -7,6 +7,7 @@
using System.IO;
using System.IO.Compression;
using System.Runtime.CompilerServices;
using System.Security.AccessControl;
using System.Security.Cryptography;
using System.Threading;
using System.Threading.Tasks;
@@ -1088,7 +1089,7 @@
{
case true:
// Atomic
var temp = Path.Combine(Path.GetDirectoryName(path),
var temp = Path.Combine(dir,
$"{Path.GetFileName(path)}.temp");
 
using (var readStream = sqlDataReader.GetStream(2))
@@ -1100,17 +1101,28 @@
using (var zipStream =
new GZipStream(readStream, CompressionMode.Decompress))
{
zipStream.CopyTo(fileStream);
await zipStream.CopyToAsync(fileStream);
zipStream.Close();
}
fileStream.Close();
}
readStream.Close();
}
 
try
{
if (!File.Exists(path))
{
File.Create(path).Close();
}
 
File.Replace(temp, path, null, true);
}
catch
catch(Exception e1)
{
var a = e1;
try
{
File.Delete(temp);