From ae4324032a48ee08a808354673f47536e76759d0 Mon Sep 17 00:00:00 2001 From: Andrey Sukharev Date: Thu, 19 Jan 2023 01:25:16 +0300 Subject: Optimize string memory usage. Use Spans and StringBuilders where possible (#3933) * Optimize string memory usage. Use ReadOnlySpan and StringBuilder where possible. * Fix copypaste error * Code generator review fixes * Use if statement instead of switch * Code style fixes Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com> * Another code style fix * Styling fix Co-authored-by: Mary-nyan * Styling fix Co-authored-by: gdkchan Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com> Co-authored-by: Mary-nyan Co-authored-by: gdkchan --- Ryujinx.HLE/HOS/Services/Account/Acc/Types/UserId.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Ryujinx.HLE/HOS/Services/Account') diff --git a/Ryujinx.HLE/HOS/Services/Account/Acc/Types/UserId.cs b/Ryujinx.HLE/HOS/Services/Account/Acc/Types/UserId.cs index 1793067d..e5577a94 100644 --- a/Ryujinx.HLE/HOS/Services/Account/Acc/Types/UserId.cs +++ b/Ryujinx.HLE/HOS/Services/Account/Acc/Types/UserId.cs @@ -1,5 +1,6 @@ using LibHac.Account; using System; +using System.Globalization; using System.IO; using System.Linq; using System.Runtime.InteropServices; @@ -35,8 +36,8 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc throw new ArgumentException("Invalid Hex value!", nameof(hex)); } - Low = Convert.ToInt64(hex.Substring(16), 16); - High = Convert.ToInt64(hex.Substring(0, 16), 16); + Low = long.Parse(hex.AsSpan(16), NumberStyles.HexNumber); + High = long.Parse(hex.AsSpan(0, 16), NumberStyles.HexNumber); } public void Write(BinaryWriter binaryWriter) -- cgit v1.2.3