Added file length check before loading cache and removed BinaryStorage.Save when file was already locked.

This commit is contained in:
Boris Makogonyuk Vasylev
2017-12-22 16:59:55 +01:00
parent a29ea0374c
commit b886422416

View File

@@ -30,19 +30,17 @@ namespace Wox.Infrastructure.Storage
{
if (File.Exists(FilePath))
{
if (new FileInfo(FilePath).Length == 0)
{
Log.Error($"|BinaryStorage.TryLoad|Zero length cache file <{FilePath}>");
Save(defaultData);
return defaultData;
}
using (var stream = new FileStream(FilePath, FileMode.Open))
{
if (stream.Length > 0)
{
var d = Deserialize(stream, defaultData);
return d;
}
else
{
Log.Error($"|BinaryStorage.TryLoad|Zero length cache file <{FilePath}>");
Save(defaultData);
return defaultData;
}
var d = Deserialize(stream, defaultData);
return d;
}
}
else