aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs')
-rw-r--r--src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs71
1 files changed, 42 insertions, 29 deletions
diff --git a/src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs b/src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs
index 682283b0..cb43ed2a 100644
--- a/src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs
+++ b/src/Ryujinx.HLE/HOS/Services/Mii/MiiDatabaseManager.cs
@@ -11,17 +11,17 @@ namespace Ryujinx.HLE.HOS.Services.Mii
{
class MiiDatabaseManager
{
- private static bool IsTestModeEnabled = false;
- private static uint MountCounter = 0;
+ private readonly bool _isTestModeEnabled = false;
+ private uint _mountCounter = 0;
- private const ulong DatabaseTestSaveDataId = 0x8000000000000031;
- private const ulong DatabaseSaveDataId = 0x8000000000000030;
+ private const ulong DatabaseTestSaveDataId = 0x8000000000000031;
+ private const ulong DatabaseSaveDataId = 0x8000000000000030;
- private static U8String DatabasePath = new U8String("mii:/MiiDatabase.dat");
- private static U8String MountName = new U8String("mii");
+ private readonly U8String _databasePath = new("mii:/MiiDatabase.dat");
+ private readonly U8String _mountName = new("mii");
private NintendoFigurineDatabase _database;
- private bool _isDirty;
+ private bool _isDirty;
private HorizonClient _horizonClient;
@@ -29,8 +29,8 @@ namespace Ryujinx.HLE.HOS.Services.Mii
public MiiDatabaseManager()
{
- _database = new NintendoFigurineDatabase();
- _isDirty = false;
+ _database = new NintendoFigurineDatabase();
+ _isDirty = false;
UpdateCounter = 0;
}
@@ -106,50 +106,63 @@ namespace Ryujinx.HLE.HOS.Services.Mii
private Result MountSave()
{
- if (MountCounter != 0)
+ if (_mountCounter != 0)
{
- MountCounter++;
+ _mountCounter++;
return Result.Success;
}
- ulong saveDataId = IsTestModeEnabled ? DatabaseTestSaveDataId : DatabaseSaveDataId;
+ ulong saveDataId = _isTestModeEnabled ? DatabaseTestSaveDataId : DatabaseSaveDataId;
- Result result = _horizonClient.Fs.MountSystemSaveData(MountName, SaveDataSpaceId.System, saveDataId);
+ Result result = _horizonClient.Fs.MountSystemSaveData(_mountName, SaveDataSpaceId.System, saveDataId);
if (result.IsFailure())
{
if (!ResultFs.TargetNotFound.Includes(result))
+ {
return result;
+ }
- if (IsTestModeEnabled)
+ if (_isTestModeEnabled)
+#pragma warning disable CS0162
{
result = _horizonClient.Fs.CreateSystemSaveData(saveDataId, 0x10000, 0x10000,
SaveDataFlags.KeepAfterResettingSystemSaveDataWithoutUserSaveData);
- if (result.IsFailure()) return result;
+ if (result.IsFailure())
+ {
+ return result;
+ }
}
+#pragma warning restore CS0162
else
{
result = _horizonClient.Fs.CreateSystemSaveData(saveDataId, SystemProgramId.Ns.Value, 0x10000,
0x10000, SaveDataFlags.KeepAfterResettingSystemSaveDataWithoutUserSaveData);
- if (result.IsFailure()) return result;
+ if (result.IsFailure())
+ {
+ return result;
+ }
}
- result = _horizonClient.Fs.MountSystemSaveData(MountName, SaveDataSpaceId.System, saveDataId);
- if (result.IsFailure()) return result;
+ result = _horizonClient.Fs.MountSystemSaveData(_mountName, SaveDataSpaceId.System, saveDataId);
+ if (result.IsFailure())
+ {
+ return result;
+ }
}
if (result == Result.Success)
{
- MountCounter++;
+ _mountCounter++;
}
return result;
}
public ResultCode DeleteFile()
{
- ResultCode result = (ResultCode)_horizonClient.Fs.DeleteFile(DatabasePath).Value;
+ ResultCode result = (ResultCode)_horizonClient.Fs.DeleteFile(_databasePath).Value;
- _horizonClient.Fs.Commit(MountName);
+ _horizonClient.Fs.Commit(_mountName);
return result;
}
@@ -158,7 +171,7 @@ namespace Ryujinx.HLE.HOS.Services.Mii
{
isBroken = false;
- if (MountCounter == 0)
+ if (_mountCounter == 0)
{
return ResultCode.InvalidArgument;
}
@@ -167,7 +180,7 @@ namespace Ryujinx.HLE.HOS.Services.Mii
ResetDatabase();
- Result result = _horizonClient.Fs.OpenFile(out FileHandle handle, DatabasePath, OpenMode.Read);
+ Result result = _horizonClient.Fs.OpenFile(out FileHandle handle, _databasePath, OpenMode.Read);
if (result.IsSuccess())
{
@@ -213,11 +226,11 @@ namespace Ryujinx.HLE.HOS.Services.Mii
private Result ForceSaveDatabase()
{
- Result result = _horizonClient.Fs.CreateFile(DatabasePath, Unsafe.SizeOf<NintendoFigurineDatabase>());
+ Result result = _horizonClient.Fs.CreateFile(_databasePath, Unsafe.SizeOf<NintendoFigurineDatabase>());
if (result.IsSuccess() || ResultFs.PathAlreadyExists.Includes(result))
{
- result = _horizonClient.Fs.OpenFile(out FileHandle handle, DatabasePath, OpenMode.Write);
+ result = _horizonClient.Fs.OpenFile(out FileHandle handle, _databasePath, OpenMode.Write);
if (result.IsSuccess())
{
@@ -230,15 +243,15 @@ namespace Ryujinx.HLE.HOS.Services.Mii
{
_horizonClient.Fs.CloseFile(handle);
- result = _horizonClient.Fs.DeleteFile(DatabasePath);
+ result = _horizonClient.Fs.DeleteFile(_databasePath);
if (result.IsSuccess())
{
- result = _horizonClient.Fs.CreateFile(DatabasePath, Unsafe.SizeOf<NintendoFigurineDatabase>());
+ result = _horizonClient.Fs.CreateFile(_databasePath, Unsafe.SizeOf<NintendoFigurineDatabase>());
if (result.IsSuccess())
{
- result = _horizonClient.Fs.OpenFile(out handle, DatabasePath, OpenMode.Write);
+ result = _horizonClient.Fs.OpenFile(out handle, _databasePath, OpenMode.Write);
}
}
@@ -259,7 +272,7 @@ namespace Ryujinx.HLE.HOS.Services.Mii
{
_isDirty = false;
- result = _horizonClient.Fs.Commit(MountName);
+ result = _horizonClient.Fs.Commit(_mountName);
}
return result;