diff options
Diffstat (limited to 'Ryujinx.Common/Configuration/ConfigurationFileFormat.cs')
| -rw-r--r-- | Ryujinx.Common/Configuration/ConfigurationFileFormat.cs | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs b/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs index 72cc579c..79993d87 100644 --- a/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs +++ b/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs @@ -227,9 +227,20 @@ namespace Ryujinx.Configuration /// Loads a configuration file from disk /// </summary> /// <param name="path">The path to the JSON configuration file</param> - public static ConfigurationFileFormat Load(string path) + public static bool TryLoad(string path, out ConfigurationFileFormat configurationFileFormat) { - return JsonHelper.DeserializeFromFile<ConfigurationFileFormat>(path); + try + { + configurationFileFormat = JsonHelper.DeserializeFromFile<ConfigurationFileFormat>(path); + + return true; + } + catch + { + configurationFileFormat = null; + + return false; + } } /// <summary> @@ -238,7 +249,8 @@ namespace Ryujinx.Configuration /// <param name="path">The path to the JSON configuration file</param> public void SaveConfig(string path) { - File.WriteAllText(path, JsonHelper.Serialize(this, true)); + using FileStream fileStream = File.Create(path, 4096, FileOptions.WriteThrough); + JsonHelper.Serialize(fileStream, this, true); } } }
\ No newline at end of file |
