diff options
author | gdkchan <gab.dark.100@gmail.com> | 2023-01-04 19:15:45 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-04 23:15:45 +0100 |
commit | 08831eecf77cedd3c4192ebab5a9c485fb15d51e (patch) | |
tree | 6d95b921a18e9cfa477579fcecb9d041e03d682e /Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs | |
parent | c6a139a6e7e3ffe1591bc14dafafed60b9bef0dc (diff) |
IPC refactor part 3+4: New server HIPC message processor (#4188)1.1.506
* IPC refactor part 3 + 4: New server HIPC message processor with source generator based serialization
* Make types match on calls to AlignUp/AlignDown
* Formatting
* Address some PR feedback
* Move BitfieldExtensions to Ryujinx.Common.Utilities and consolidate implementations
* Rename Reader/Writer to SpanReader/SpanWriter and move to Ryujinx.Common.Memory
* Implement EventType
* Address more PR feedback
* Log request processing errors since they are not normal
* Rename waitable to multiwait and add missing lock
* PR feedback
* Ac_K PR feedback
Diffstat (limited to 'Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs')
-rw-r--r-- | Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs b/Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs index 6e935077..eb7c5a41 100644 --- a/Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs +++ b/Ryujinx.HLE/HOS/Kernel/Ipc/KClientPort.cs @@ -1,5 +1,6 @@ using Ryujinx.HLE.HOS.Kernel.Common; using Ryujinx.HLE.HOS.Kernel.Process; +using Ryujinx.Horizon.Common; using System.Threading; namespace Ryujinx.HLE.HOS.Kernel.Ipc @@ -19,7 +20,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Ipc _parent = parent; } - public KernelResult Connect(out KClientSession clientSession) + public Result Connect(out KClientSession clientSession) { clientSession = null; @@ -40,9 +41,9 @@ namespace Ryujinx.HLE.HOS.Kernel.Ipc KSession session = new KSession(KernelContext, this); - KernelResult result = _parent.EnqueueIncomingSession(session.ServerSession); + Result result = _parent.EnqueueIncomingSession(session.ServerSession); - if (result != KernelResult.Success) + if (result != Result.Success) { session.ClientSession.DecrementReferenceCount(); session.ServerSession.DecrementReferenceCount(); @@ -55,7 +56,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Ipc return result; } - public KernelResult ConnectLight(out KLightClientSession clientSession) + public Result ConnectLight(out KLightClientSession clientSession) { clientSession = null; @@ -76,9 +77,9 @@ namespace Ryujinx.HLE.HOS.Kernel.Ipc KLightSession session = new KLightSession(KernelContext); - KernelResult result = _parent.EnqueueIncomingLightSession(session.ServerSession); + Result result = _parent.EnqueueIncomingLightSession(session.ServerSession); - if (result != KernelResult.Success) + if (result != Result.Success) { session.ClientSession.DecrementReferenceCount(); session.ServerSession.DecrementReferenceCount(); @@ -128,7 +129,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Ipc } } - public new static KernelResult RemoveName(KernelContext context, string name) + public new static Result RemoveName(KernelContext context, string name) { KAutoObject foundObj = FindNamedObject(context, name); |