From cd77a68c87ac2c59d4076d0e876e91001e429322 Mon Sep 17 00:00:00 2001 From: ParantezTech <12572227+par274@users.noreply.github.com> Date: Thu, 8 Oct 2026 23:44:39 +0300 Subject: [PATCH] [Kernel] Close random device descriptors Co-authored-by: Sekai <140012992+SekaixX@users.noreply.github.com> --- src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs b/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs index dc1963c..6d2f5ad 100644 --- a/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs +++ b/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs @@ -2273,7 +2273,12 @@ public static partial class KernelMemoryCompatExports string? observedBinkPath = null; lock (_fdGate) { - if (_openFiles.Remove(fd, out stream)) + if (_randomDeviceDescriptors.Remove(fd)) + { + ctx[CpuRegister.Rax] = 0; + return (int)OrbisGen2Result.ORBIS_GEN2_OK; + } + else if (_openFiles.Remove(fd, out stream)) { _binkGuestCompletionShims.Remove(fd); if (_observedBinkGuestFiles.Remove(fd, out observedBinkPath))