diff --git a/Wox.Infrastructure/Storage/BinaryStorage.cs b/Wox.Infrastructure/Storage/BinaryStorage.cs index b5128e4721..1c49714bd2 100644 --- a/Wox.Infrastructure/Storage/BinaryStorage.cs +++ b/Wox.Infrastructure/Storage/BinaryStorage.cs @@ -64,7 +64,7 @@ namespace Wox.Infrastructure.Storage try { - var t = (T)binaryFormatter.Deserialize(stream); + var t = ((T)binaryFormatter.Deserialize(stream)).NonNull(); return t; } catch (System.Exception e) diff --git a/Wox.Infrastructure/Storage/JsonStorage.cs b/Wox.Infrastructure/Storage/JsonStorage.cs index 191013fb2f..a82b38fadf 100644 --- a/Wox.Infrastructure/Storage/JsonStorage.cs +++ b/Wox.Infrastructure/Storage/JsonStorage.cs @@ -49,20 +49,25 @@ namespace Wox.Infrastructure.Storage { LoadDefault(); } - return _data; + return _data.NonNull(); } private void Deserialize(string searlized) { try { - _data = JsonConvert.DeserializeObject(searlized, _serializerSettings).NonNull(); + _data = JsonConvert.DeserializeObject(searlized, _serializerSettings); } catch (JsonSerializationException e) { LoadDefault(); Log.Exception($"|JsonStrorage.Deserialize|Deserialize error for json <{FilePath}>", e); } + + if (_data == null) + { + LoadDefault(); + } } private void LoadDefault()