diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2022-10-21 00:07:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-21 00:07:30 +0200 |
commit | a6628e8dba0432031a5bc470e5716c831128a357 (patch) | |
tree | 533eef88596325c5f14b3caf5350cb9a09265afa /src/core/hle/ipc_helpers.h | |
parent | Merge pull request #9099 from Docteh/undocked (diff) | |
parent | kernel: remove most SessionRequestManager handling from KServerSession (diff) | |
download | yuzu-a6628e8dba0432031a5bc470e5716c831128a357.tar yuzu-a6628e8dba0432031a5bc470e5716c831128a357.tar.gz yuzu-a6628e8dba0432031a5bc470e5716c831128a357.tar.bz2 yuzu-a6628e8dba0432031a5bc470e5716c831128a357.tar.lz yuzu-a6628e8dba0432031a5bc470e5716c831128a357.tar.xz yuzu-a6628e8dba0432031a5bc470e5716c831128a357.tar.zst yuzu-a6628e8dba0432031a5bc470e5716c831128a357.zip |
Diffstat (limited to 'src/core/hle/ipc_helpers.h')
-rw-r--r-- | src/core/hle/ipc_helpers.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h index 0cc26a211..aa27be767 100644 --- a/src/core/hle/ipc_helpers.h +++ b/src/core/hle/ipc_helpers.h @@ -86,13 +86,13 @@ public: u32 num_domain_objects{}; const bool always_move_handles{ (static_cast<u32>(flags) & static_cast<u32>(Flags::AlwaysMoveHandles)) != 0}; - if (!ctx.Session()->IsDomain() || always_move_handles) { + if (!ctx.Session()->GetSessionRequestManager()->IsDomain() || always_move_handles) { num_handles_to_move = num_objects_to_move; } else { num_domain_objects = num_objects_to_move; } - if (ctx.Session()->IsDomain()) { + if (ctx.Session()->GetSessionRequestManager()->IsDomain()) { raw_data_size += static_cast<u32>(sizeof(DomainMessageHeader) / sizeof(u32) + num_domain_objects); ctx.write_size += num_domain_objects; @@ -125,7 +125,8 @@ public: if (!ctx.IsTipc()) { AlignWithPadding(); - if (ctx.Session()->IsDomain() && ctx.HasDomainMessageHeader()) { + if (ctx.Session()->GetSessionRequestManager()->IsDomain() && + ctx.HasDomainMessageHeader()) { IPC::DomainMessageHeader domain_header{}; domain_header.num_objects = num_domain_objects; PushRaw(domain_header); @@ -145,7 +146,7 @@ public: template <class T> void PushIpcInterface(std::shared_ptr<T> iface) { - if (context->Session()->IsDomain()) { + if (context->Session()->GetSessionRequestManager()->IsDomain()) { context->AddDomainObject(std::move(iface)); } else { kernel.CurrentProcess()->GetResourceLimit()->Reserve( @@ -386,7 +387,7 @@ public: template <class T> std::weak_ptr<T> PopIpcInterface() { - ASSERT(context->Session()->IsDomain()); + ASSERT(context->Session()->GetSessionRequestManager()->IsDomain()); ASSERT(context->GetDomainMessageHeader().input_object_count > 0); return context->GetDomainHandler<T>(Pop<u32>() - 1); } |