aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs')
-rw-r--r--Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs13
1 files changed, 6 insertions, 7 deletions
diff --git a/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs b/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs
index 96ae84be..ff658673 100644
--- a/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs
+++ b/Ryujinx.HLE/HOS/Services/Ssl/SslService/ISslConnection.cs
@@ -142,14 +142,13 @@ namespace Ryujinx.HLE.HOS.Services.Ssl.SslService
// GetHostName(buffer<bytes, 6>) -> u32
public ResultCode GetHostName(ServiceCtx context)
{
- ulong hostNameDataPosition = context.Request.ReceiveBuff[0].Position;
- ulong hostNameDataSize = context.Request.ReceiveBuff[0].Size;
+ ulong bufferAddress = context.Request.ReceiveBuff[0].Position;
+ ulong bufferLen = context.Request.ReceiveBuff[0].Size;
- byte[] hostNameData = new byte[hostNameDataSize];
-
- Encoding.ASCII.GetBytes(_hostName, hostNameData);
-
- context.Memory.Write(hostNameDataPosition, hostNameData);
+ using (var region = context.Memory.GetWritableRegion(bufferAddress, (int)bufferLen, true))
+ {
+ Encoding.ASCII.GetBytes(_hostName, region.Memory.Span);
+ }
context.ResponseData.Write((uint)_hostName.Length);