catch exception if loading DalamudConfiguration fails

This commit is contained in:
Poliwrath 2020-07-27 02:45:02 -04:00
parent 2c02a4b28b
commit 73bb52d1b5

View file

@ -5,6 +5,7 @@ using Dalamud.Configuration;
using Dalamud.DiscordBot; using Dalamud.DiscordBot;
using Dalamud.Game.Chat; using Dalamud.Game.Chat;
using Newtonsoft.Json; using Newtonsoft.Json;
using Serilog;
namespace Dalamud namespace Dalamud
{ {
@ -43,7 +44,17 @@ namespace Dalamud
public string ConfigPath; public string ConfigPath;
public static DalamudConfiguration Load(string path) { public static DalamudConfiguration Load(string path) {
var deserialized = JsonConvert.DeserializeObject<DalamudConfiguration>(File.ReadAllText(path)); DalamudConfiguration deserialized;
try
{
deserialized = JsonConvert.DeserializeObject<DalamudConfiguration>(File.ReadAllText(path));
}
catch (Exception ex)
{
Log.Warning(ex, "Failed to load DalamudConfiguration at {0}", path);
deserialized = new DalamudConfiguration();
}
deserialized.ConfigPath = path; deserialized.ConfigPath = path;
return deserialized; return deserialized;