Fix NRE when calling GetSockName before Bind (#6206)

This commit is contained in:
gdkchan 2024-01-29 12:28:32 -03:00 committed by GitHub
parent f6475cca17
commit 30bdc4544e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -121,8 +121,15 @@ namespace Ryujinx.HLE.HOS.Services.Sockets.Bsd
{ {
IPEndPoint endPoint = isRemote ? socket.RemoteEndPoint : socket.LocalEndPoint; IPEndPoint endPoint = isRemote ? socket.RemoteEndPoint : socket.LocalEndPoint;
if (endPoint != null)
{
context.Memory.Write(bufferPosition, BsdSockAddr.FromIPEndPoint(endPoint)); context.Memory.Write(bufferPosition, BsdSockAddr.FromIPEndPoint(endPoint));
} }
else
{
context.Memory.Write(bufferPosition, new BsdSockAddr());
}
}
[CommandCmif(0)] [CommandCmif(0)]
// Initialize(nn::socket::BsdBufferConfig config, u64 pid, u64 transferMemorySize, KObject<copy, transfer_memory>, pid) -> u32 bsd_errno // Initialize(nn::socket::BsdBufferConfig config, u64 pid, u64 transferMemorySize, KObject<copy, transfer_memory>, pid) -> u32 bsd_errno