Close transfer memory properly on nvservices (#2477)

This commit is contained in:
gdkchan 2021-07-14 14:09:00 -03:00 committed by GitHub
parent 208ba1dde2
commit 9d688e37d6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -314,7 +314,7 @@ namespace Ryujinx.HLE.HOS.Services.Nv
public ResultCode Initialize(ServiceCtx context) public ResultCode Initialize(ServiceCtx context)
{ {
long transferMemSize = context.RequestData.ReadInt64(); long transferMemSize = context.RequestData.ReadInt64();
int transferMemHandle = context.Request.HandleDesc.ToCopy[0]; int transferMemHandle = context.Request.HandleDesc.ToCopy[1];
// TODO: When transfer memory will be implemented, this could be removed. // TODO: When transfer memory will be implemented, this could be removed.
_transferMemInitialized = true; _transferMemInitialized = true;
@ -327,7 +327,8 @@ namespace Ryujinx.HLE.HOS.Services.Nv
context.ResponseData.Write((uint)NvResult.Success); context.ResponseData.Write((uint)NvResult.Success);
// Close transfer memory immediately as we don't use it. // Close the process and transfer memory handles immediately as we don't use them.
context.Device.System.KernelContext.Syscall.CloseHandle(clientHandle);
context.Device.System.KernelContext.Syscall.CloseHandle(transferMemHandle); context.Device.System.KernelContext.Syscall.CloseHandle(transferMemHandle);
return ResultCode.Success; return ResultCode.Success;