diff options
Diffstat (limited to 'Ryujinx/Ui/Windows/DlcWindow.cs')
-rw-r--r-- | Ryujinx/Ui/Windows/DlcWindow.cs | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/Ryujinx/Ui/Windows/DlcWindow.cs b/Ryujinx/Ui/Windows/DlcWindow.cs index 9fccec19..b22f1593 100644 --- a/Ryujinx/Ui/Windows/DlcWindow.cs +++ b/Ryujinx/Ui/Windows/DlcWindow.cs @@ -7,15 +7,13 @@ using LibHac.Tools.Fs; using LibHac.Tools.FsSystem; using LibHac.Tools.FsSystem.NcaUtils; using Ryujinx.Common.Configuration; +using Ryujinx.Common.Utilities; using Ryujinx.HLE.FileSystem; using Ryujinx.Ui.Widgets; using System; using System.Collections.Generic; using System.IO; -using System.Text; - -using GUI = Gtk.Builder.ObjectAttribute; -using JsonHelper = Ryujinx.Common.Utilities.JsonHelper; +using GUI = Gtk.Builder.ObjectAttribute; namespace Ryujinx.Ui.Windows { @@ -26,6 +24,8 @@ namespace Ryujinx.Ui.Windows private readonly string _dlcJsonPath; private readonly List<DownloadableContentContainer> _dlcContainerList; + private static readonly DownloadableContentJsonSerializerContext SerializerContext = new(JsonHelper.GetDefaultSerializerOptions()); + #pragma warning disable CS0649, IDE0044 [GUI] Label _baseTitleInfoLabel; [GUI] TreeView _dlcTreeView; @@ -45,7 +45,7 @@ namespace Ryujinx.Ui.Windows try { - _dlcContainerList = JsonHelper.DeserializeFromFile<List<DownloadableContentContainer>>(_dlcJsonPath); + _dlcContainerList = JsonHelper.DeserializeFromFile(_dlcJsonPath, SerializerContext.ListDownloadableContentContainer); } catch { @@ -260,10 +260,7 @@ namespace Ryujinx.Ui.Windows while (_dlcTreeView.Model.IterNext(ref parentIter)); } - using (FileStream dlcJsonStream = File.Create(_dlcJsonPath, 4096, FileOptions.WriteThrough)) - { - dlcJsonStream.Write(Encoding.UTF8.GetBytes(JsonHelper.Serialize(_dlcContainerList, true))); - } + JsonHelper.SerializeToFile(_dlcJsonPath, _dlcContainerList, SerializerContext.ListDownloadableContentContainer); Dispose(); } |