aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.HLE/HOS/Applets/Error
diff options
context:
space:
mode:
authorTSRBerry <20988865+TSRBerry@users.noreply.github.com>2023-07-16 19:31:14 +0200
committerGitHub <noreply@github.com>2023-07-16 19:31:14 +0200
commit326749498bed4360e5a4b11fc67d5ec7cb9a3076 (patch)
treeae21fb26f99b401ca4e9efaab72b679a81c22369 /src/Ryujinx.HLE/HOS/Applets/Error
parentfec8291c17fa106c28f58b56419e90d49a41a1ea (diff)
[Ryujinx.HLE] Address dotnet-format issues (#5380)
* dotnet format style --severity info Some changes were manually reverted. * dotnet format analyzers --serverity info Some changes have been minimally adapted. * Restore a few unused methods and variables * Silence dotnet format IDE0060 warnings * Silence dotnet format IDE0052 warnings * Address or silence dotnet format IDE1006 warnings * Address dotnet format CA1816 warnings * Address or silence dotnet format CA2208 warnings * Address or silence dotnet format CA1806 and a few CA1854 warnings * Address dotnet format CA2211 warnings * Address dotnet format CA1822 warnings * Address or silence dotnet format CA1069 warnings * Make dotnet format succeed in style mode * Address or silence dotnet format CA2211 warnings * Address review comments * Address dotnet format CA2208 warnings properly * Make ProcessResult readonly * Address most dotnet format whitespace warnings * Apply dotnet format whitespace formatting A few of them have been manually reverted and the corresponding warning was silenced * Add previously silenced warnings back I have no clue how these disappeared * Revert formatting changes for while and for-loops * Format if-blocks correctly * Run dotnet format style after rebase * Run dotnet format whitespace after rebase * Run dotnet format style after rebase * Run dotnet format analyzers after rebase * Run dotnet format after rebase and remove unused usings - analyzers - style - whitespace * Disable 'prefer switch expression' rule * Add comments to disabled warnings * Fix a few disabled warnings * Fix naming rule violation, Convert shader properties to auto-property and convert values to const * Simplify properties and array initialization, Use const when possible, Remove trailing commas * Start working on disabled warnings * Fix and silence a few dotnet-format warnings again * Run dotnet format after rebase * Use using declaration instead of block syntax * Address IDE0251 warnings * Address a few disabled IDE0060 warnings * Silence IDE0060 in .editorconfig * Revert "Simplify properties and array initialization, Use const when possible, Remove trailing commas" This reverts commit 9462e4136c0a2100dc28b20cf9542e06790aa67e. * dotnet format whitespace after rebase * First dotnet format pass * Fix naming rule violations * Fix typo * Add trailing commas, use targeted new and use array initializer * Fix build issues * Fix remaining build issues * Remove SuppressMessage for CA1069 where possible * Address dotnet format issues * Address formatting issues Co-authored-by: Ac_K <acoustik666@gmail.com> * Add GetHashCode implementation for RenderingSurfaceInfo * Explicitly silence CA1822 for every affected method in Syscall * Address formatting issues in Demangler.cs * Address review feedback Co-authored-by: Ac_K <acoustik666@gmail.com> * Revert marking service methods as static * Next dotnet format pass * Address review feedback --------- Co-authored-by: Ac_K <acoustik666@gmail.com>
Diffstat (limited to 'src/Ryujinx.HLE/HOS/Applets/Error')
-rw-r--r--src/Ryujinx.HLE/HOS/Applets/Error/ApplicationErrorArg.cs6
-rw-r--r--src/Ryujinx.HLE/HOS/Applets/Error/ErrorApplet.cs67
-rw-r--r--src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonArg.cs2
-rw-r--r--src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonHeader.cs16
-rw-r--r--src/Ryujinx.HLE/HOS/Applets/Error/ErrorType.cs4
5 files changed, 48 insertions, 47 deletions
diff --git a/src/Ryujinx.HLE/HOS/Applets/Error/ApplicationErrorArg.cs b/src/Ryujinx.HLE/HOS/Applets/Error/ApplicationErrorArg.cs
index f40d5411..4263c84b 100644
--- a/src/Ryujinx.HLE/HOS/Applets/Error/ApplicationErrorArg.cs
+++ b/src/Ryujinx.HLE/HOS/Applets/Error/ApplicationErrorArg.cs
@@ -6,9 +6,9 @@ namespace Ryujinx.HLE.HOS.Applets.Error
[StructLayout(LayoutKind.Sequential, Pack = 1)]
struct ApplicationErrorArg
{
- public uint ErrorNumber;
- public ulong LanguageCode;
+ public uint ErrorNumber;
+ public ulong LanguageCode;
public ByteArray2048 MessageText;
public ByteArray2048 DetailsText;
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorApplet.cs b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorApplet.cs
index c5c6e8e9..fa415b39 100644
--- a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorApplet.cs
+++ b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorApplet.cs
@@ -22,11 +22,11 @@ namespace Ryujinx.HLE.HOS.Applets.Error
{
private const long ErrorMessageBinaryTitleId = 0x0100000000000801;
- private Horizon _horizon;
- private AppletSession _normalSession;
- private CommonArguments _commonArguments;
+ private readonly Horizon _horizon;
+ private AppletSession _normalSession;
+ private CommonArguments _commonArguments;
private ErrorCommonHeader _errorCommonHeader;
- private byte[] _errorStorage;
+ private byte[] _errorStorage;
public event EventHandler AppletStateChanged;
@@ -40,14 +40,14 @@ namespace Ryujinx.HLE.HOS.Applets.Error
public ResultCode Start(AppletSession normalSession, AppletSession interactiveSession)
{
- _normalSession = normalSession;
+ _normalSession = normalSession;
_commonArguments = IApplet.ReadStruct<CommonArguments>(_normalSession.Pop());
Logger.Info?.PrintMsg(LogClass.ServiceAm, $"ErrorApplet version: 0x{_commonArguments.AppletVersion:x8}");
- _errorStorage = _normalSession.Pop();
+ _errorStorage = _normalSession.Pop();
_errorCommonHeader = IApplet.ReadStruct<ErrorCommonHeader>(_errorStorage);
- _errorStorage = _errorStorage.Skip(Marshal.SizeOf<ErrorCommonHeader>()).ToArray();
+ _errorStorage = _errorStorage.Skip(Marshal.SizeOf<ErrorCommonHeader>()).ToArray();
switch (_errorCommonHeader.Type)
{
@@ -63,7 +63,8 @@ namespace Ryujinx.HLE.HOS.Applets.Error
break;
}
- default: throw new NotImplementedException($"ErrorApplet type {_errorCommonHeader.Type} is not implemented.");
+ default:
+ throw new NotImplementedException($"ErrorApplet type {_errorCommonHeader.Type} is not implemented.");
}
AppletStateChanged?.Invoke(this, null);
@@ -71,15 +72,16 @@ namespace Ryujinx.HLE.HOS.Applets.Error
return ResultCode.Success;
}
- private (uint module, uint description) HexToResultCode(uint resultCode)
+ private static (uint module, uint description) HexToResultCode(uint resultCode)
{
return ((resultCode & 0x1FF) + 2000, (resultCode >> 9) & 0x3FFF);
}
- private string SystemLanguageToLanguageKey(SystemLanguage systemLanguage)
+ private static string SystemLanguageToLanguageKey(SystemLanguage systemLanguage)
{
return systemLanguage switch
{
+#pragma warning disable IDE0055 // Disable formatting
SystemLanguage.Japanese => "ja",
SystemLanguage.AmericanEnglish => "en-US",
SystemLanguage.French => "fr",
@@ -98,7 +100,8 @@ namespace Ryujinx.HLE.HOS.Applets.Error
SystemLanguage.SimplifiedChinese => "zh-Hans",
SystemLanguage.TraditionalChinese => "zh-Hant",
SystemLanguage.BrazilianPortuguese => "pt-BR",
- _ => "en-US"
+ _ => "en-US",
+#pragma warning restore IDE0055
};
}
@@ -111,26 +114,24 @@ namespace Ryujinx.HLE.HOS.Applets.Error
{
string binaryTitleContentPath = _horizon.ContentManager.GetInstalledContentPath(ErrorMessageBinaryTitleId, StorageId.BuiltInSystem, NcaContentType.Data);
- using (LibHac.Fs.IStorage ncaFileStream = new LocalStorage(_horizon.Device.FileSystem.SwitchPathToSystemPath(binaryTitleContentPath), FileAccess.Read, FileMode.Open))
+ using LibHac.Fs.IStorage ncaFileStream = new LocalStorage(FileSystem.VirtualFileSystem.SwitchPathToSystemPath(binaryTitleContentPath), FileAccess.Read, FileMode.Open);
+ Nca nca = new(_horizon.Device.FileSystem.KeySet, ncaFileStream);
+ IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, _horizon.FsIntegrityCheckLevel);
+ string languageCode = SystemLanguageToLanguageKey(_horizon.State.DesiredSystemLanguage);
+ string filePath = $"/{module}/{description:0000}/{languageCode}_{key}";
+
+ if (romfs.FileExists(filePath))
+ {
+ using var binaryFile = new UniqueRef<IFile>();
+
+ romfs.OpenFile(ref binaryFile.Ref, filePath.ToU8Span(), OpenMode.Read).ThrowIfFailure();
+ StreamReader reader = new(binaryFile.Get.AsStream(), Encoding.Unicode);
+
+ return CleanText(reader.ReadToEnd());
+ }
+ else
{
- Nca nca = new Nca(_horizon.Device.FileSystem.KeySet, ncaFileStream);
- IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, _horizon.FsIntegrityCheckLevel);
- string languageCode = SystemLanguageToLanguageKey(_horizon.State.DesiredSystemLanguage);
- string filePath = $"/{module}/{description:0000}/{languageCode}_{key}";
-
- if (romfs.FileExists(filePath))
- {
- using var binaryFile = new UniqueRef<IFile>();
-
- romfs.OpenFile(ref binaryFile.Ref, filePath.ToU8Span(), OpenMode.Read).ThrowIfFailure();
- StreamReader reader = new StreamReader(binaryFile.Get.AsStream(), Encoding.Unicode);
-
- return CleanText(reader.ReadToEnd());
- }
- else
- {
- return "";
- }
+ return "";
}
}
@@ -145,7 +146,7 @@ namespace Ryujinx.HLE.HOS.Applets.Error
{
ErrorCommonArg errorCommonArg = IApplet.ReadStruct<ErrorCommonArg>(_errorStorage);
- uint module = errorCommonArg.Module;
+ uint module = errorCommonArg.Module;
uint description = errorCommonArg.Description;
if (_errorCommonHeader.MessageFlag == 0)
@@ -188,7 +189,7 @@ namespace Ryujinx.HLE.HOS.Applets.Error
string messageText = Encoding.ASCII.GetString(messageTextBuffer.TakeWhile(b => !b.Equals(0)).ToArray());
string detailsText = Encoding.ASCII.GetString(detailsTextBuffer.TakeWhile(b => !b.Equals(0)).ToArray());
- List<string> buttons = new List<string>();
+ List<string> buttons = new();
// TODO: Handle the LanguageCode to return the translated "OK" and "Details".
@@ -213,4 +214,4 @@ namespace Ryujinx.HLE.HOS.Applets.Error
return ResultCode.Success;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonArg.cs b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonArg.cs
index 530a2ad8..a042739c 100644
--- a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonArg.cs
+++ b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonArg.cs
@@ -9,4 +9,4 @@ namespace Ryujinx.HLE.HOS.Applets.Error
public uint Description;
public uint ResultCode;
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonHeader.cs b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonHeader.cs
index b93cdd4f..ca8e9220 100644
--- a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonHeader.cs
+++ b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorCommonHeader.cs
@@ -6,12 +6,12 @@ namespace Ryujinx.HLE.HOS.Applets.Error
struct ErrorCommonHeader
{
public ErrorType Type;
- public byte JumpFlag;
- public byte ReservedFlag1;
- public byte ReservedFlag2;
- public byte ReservedFlag3;
- public byte ContextFlag;
- public byte MessageFlag;
- public byte ContextFlag2;
+ public byte JumpFlag;
+ public byte ReservedFlag1;
+ public byte ReservedFlag2;
+ public byte ReservedFlag3;
+ public byte ContextFlag;
+ public byte MessageFlag;
+ public byte ContextFlag2;
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorType.cs b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorType.cs
index f06af1d3..c5f7e4eb 100644
--- a/src/Ryujinx.HLE/HOS/Applets/Error/ErrorType.cs
+++ b/src/Ryujinx.HLE/HOS/Applets/Error/ErrorType.cs
@@ -8,6 +8,6 @@
ErrorEulaArg,
ErrorPctlArg,
ErrorRecordArg,
- SystemUpdateEulaArg = 8
+ SystemUpdateEulaArg = 8,
}
-} \ No newline at end of file
+}