From 5a39e6a847258b09214fab24e2245bcf55da6ddf Mon Sep 17 00:00:00 2001 From: emmaus Date: Sat, 25 Aug 2018 20:21:07 +0000 Subject: [PATCH] address nits --- Ryujinx.HLE/FileSystem/Save.cs | 2 +- Ryujinx.HLE/FileSystem/SaveHelper.cs | 22 ++++++++++--------- Ryujinx.HLE/FileSystem/VirtualFileSystem.cs | 16 ++++++++------ .../HOS/Services/FspSrv/IFileSystemProxy.cs | 8 +++---- Ryujinx.HLE/HOS/SystemState/UserId.cs | 14 ------------ 5 files changed, 25 insertions(+), 37 deletions(-) diff --git a/Ryujinx.HLE/FileSystem/Save.cs b/Ryujinx.HLE/FileSystem/Save.cs index 1bf0cddc99..5f89368092 100644 --- a/Ryujinx.HLE/FileSystem/Save.cs +++ b/Ryujinx.HLE/FileSystem/Save.cs @@ -2,7 +2,7 @@ namespace Ryujinx.HLE.FileSystem { - struct Save + struct SaveInfo { public long TitleId { get; set; } public long SaveID { get; set; } diff --git a/Ryujinx.HLE/FileSystem/SaveHelper.cs b/Ryujinx.HLE/FileSystem/SaveHelper.cs index 1a62cfeceb..e8074d0730 100644 --- a/Ryujinx.HLE/FileSystem/SaveHelper.cs +++ b/Ryujinx.HLE/FileSystem/SaveHelper.cs @@ -1,28 +1,27 @@ -using System; -using System.Collections.Generic; -using System.Text; +using Ryujinx.HLE.HOS; using System.IO; -using Ryujinx.HLE.HOS; + +using static Ryujinx.HLE.FileSystem.VirtualFileSystem; namespace Ryujinx.HLE.FileSystem { static class SaveHelper { - public static string GetSavePath(Save SaveMetaData, ServiceCtx Context) + public static string GetSavePath(SaveInfo SaveMetaData, ServiceCtx Context) { - string BaseSavePath = "nand"; + string BaseSavePath = NandPath; long CurrentTitleId = SaveMetaData.TitleId; switch (SaveMetaData.SaveSpaceId) { case SaveSpaceId.NandUser: - BaseSavePath = Path.Combine(BaseSavePath, "user"); + BaseSavePath = UserNandPath; break; case SaveSpaceId.NandSystem: - BaseSavePath = Path.Combine(BaseSavePath, "system"); + BaseSavePath = SystemNandPath; break; case SaveSpaceId.SdCard: - BaseSavePath = Path.Combine("sdmc", "Nintendo"); + BaseSavePath = Path.Combine(SdCardPath, "Nintendo"); break; } @@ -30,7 +29,10 @@ namespace Ryujinx.HLE.FileSystem if (SaveMetaData.TitleId == 0 && SaveMetaData.SaveDataType == SaveDataType.SaveData) { - CurrentTitleId = Context.Process.MetaData.ACI0.TitleId; + if (Context.Process.MetaData != null) + { + CurrentTitleId = (long)Context.Process.MetaData?.ACI0.TitleId; + } } string SavePath = Path.Combine(BaseSavePath, diff --git a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs index d2ae402db0..2b7a7e16b6 100644 --- a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs +++ b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs @@ -1,15 +1,17 @@ +using Ryujinx.HLE.HOS; using System; using System.IO; -using Ryujinx.HLE.HOS; namespace Ryujinx.HLE.FileSystem { class VirtualFileSystem : IDisposable { - private const string BasePath = "RyuFs"; - private const string NandPath = "nand"; - private const string SdCardPath = "sdmc"; - private const string SystemPath = "system"; + public const string BasePath = "RyuFs"; + public const string NandPath = "nand"; + public const string SdCardPath = "sdmc"; + public const string SystemPath = "system"; + public const string SystemNandPath = "nand/system"; + public const string UserNandPath = "nand/user"; public Stream RomFs { get; private set; } @@ -53,8 +55,8 @@ namespace Ryujinx.HLE.FileSystem public string GetNandPath() => MakeDirAndGetFullPath(NandPath); - public string GetGameSavePath(Save SaveMetaData, ServiceCtx Context) - => MakeDirAndGetFullPath(SaveHelper.GetSavePath(SaveMetaData, Context)); + public string GetGameSavePath(SaveInfo Save, ServiceCtx Context) + => MakeDirAndGetFullPath(SaveHelper.GetSavePath(Save, Context)); public string GetSystemPath() => MakeDirAndGetFullPath(SystemPath); diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs b/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs index 5ada207b41..6626305e82 100644 --- a/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs +++ b/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs @@ -1,9 +1,7 @@ -using Ryujinx.HLE.HOS.Ipc; -using Ryujinx.HLE.Logging; -using System.Collections.Generic; using Ryujinx.HLE.FileSystem; - +using Ryujinx.HLE.HOS.Ipc; using Ryujinx.HLE.HOS.SystemState; +using System.Collections.Generic; namespace Ryujinx.HLE.HOS.Services.FspSrv { @@ -78,7 +76,7 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv { SaveSpaceId SaveSpaceId = (SaveSpaceId)Context.RequestData.ReadInt64(); - Save SaveInfo = new Save() + SaveInfo SaveInfo = new SaveInfo() { TitleId = Context.RequestData.ReadInt64(), UserID = new UserId(Context.RequestData.ReadInt64(), diff --git a/Ryujinx.HLE/HOS/SystemState/UserId.cs b/Ryujinx.HLE/HOS/SystemState/UserId.cs index ff40bd7ef9..1e7c53dd00 100644 --- a/Ryujinx.HLE/HOS/SystemState/UserId.cs +++ b/Ryujinx.HLE/HOS/SystemState/UserId.cs @@ -43,20 +43,6 @@ namespace Ryujinx.HLE.HOS.SystemState this.Bytes = Bytes; } - public UserId(byte[] UserIdBytes) - { - Bytes = UserIdBytes; - - UserIdHex = string.Empty; - - foreach (byte Byte in Bytes) - { - UserIdHex += Byte.ToString("X2"); - } - - this.Bytes = Bytes; - } - public UserId(string UserIdHex) { if (UserIdHex == null || UserIdHex.Length != 32 || !UserIdHex.All("0123456789abcdefABCDEF".Contains))