diff options
Diffstat (limited to 'Ryujinx.HLE/Utilities/StringUtils.cs')
-rw-r--r-- | Ryujinx.HLE/Utilities/StringUtils.cs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Ryujinx.HLE/Utilities/StringUtils.cs b/Ryujinx.HLE/Utilities/StringUtils.cs index 4ce0823c..f23a843f 100644 --- a/Ryujinx.HLE/Utilities/StringUtils.cs +++ b/Ryujinx.HLE/Utilities/StringUtils.cs @@ -1,4 +1,5 @@ -using Ryujinx.HLE.HOS; +using LibHac.Common; +using Ryujinx.HLE.HOS; using System; using System.Globalization; using System.IO; @@ -73,6 +74,16 @@ namespace Ryujinx.HLE.Utilities } } + public static U8Span ReadUtf8Span(ServiceCtx context, int index = 0) + { + ulong position = (ulong)context.Request.PtrBuff[index].Position; + ulong size = (ulong)context.Request.PtrBuff[index].Size; + + ReadOnlySpan<byte> buffer = context.Memory.GetSpan(position, size); + + return new U8Span(buffer); + } + public static string ReadUtf8StringSend(ServiceCtx context, int index = 0) { long position = context.Request.SendBuff[index].Position; |