#281 handling settings.xml crash

This commit is contained in:
Frank Skare
2021-07-17 16:45:34 +02:00
parent 886f3349ae
commit 48735a602a

View File

@@ -36,20 +36,35 @@ namespace mpvnet
if (!File.Exists(SettingsFile)) if (!File.Exists(SettingsFile))
return new AppSettings(); return new AppSettings();
XmlSerializer serializer = new XmlSerializer(typeof(AppSettings)); try
{
XmlSerializer serializer = new XmlSerializer(typeof(AppSettings));
using (FileStream fs = new FileStream(SettingsFile, FileMode.Open)) using (FileStream fs = new FileStream(SettingsFile, FileMode.Open))
return (AppSettings)serializer.Deserialize(fs); return (AppSettings)serializer.Deserialize(fs);
}
catch (Exception ex)
{
Terminal.WriteError(ex.ToString());
return new AppSettings();
}
} }
public static void Save(object obj) public static void Save(object obj)
{ {
using (XmlTextWriter writer = new XmlTextWriter(SettingsFile, Encoding.UTF8)) try
{ {
writer.Formatting = Formatting.Indented; using (XmlTextWriter writer = new XmlTextWriter(SettingsFile, Encoding.UTF8))
writer.Indentation = 4; {
XmlSerializer serializer = new XmlSerializer(obj.GetType()); writer.Formatting = Formatting.Indented;
serializer.Serialize(writer, obj); writer.Indentation = 4;
XmlSerializer serializer = new XmlSerializer(obj.GetType());
serializer.Serialize(writer, obj);
}
}
catch (Exception ex)
{
Terminal.WriteError(ex.ToString());
} }
} }
} }