From ba2ffd7b8112d6dccbbecb1ba2438ce4c53b4fbe Mon Sep 17 00:00:00 2001 From: Subv Date: Sun, 7 Jan 2018 09:59:38 -0500 Subject: [PATCH] IPC: Take the number of domain objects as a parameter in MakeBuilder. --- src/core/hle/ipc_helpers.h | 6 ++++-- src/core/hle/service/sm/sm.cpp | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h index b58e33a69..40e6c4897 100644 --- a/src/core/hle/ipc_helpers.h +++ b/src/core/hle/ipc_helpers.h @@ -205,12 +205,14 @@ public: } RequestBuilder MakeBuilder(u32 normal_params_size, u32 num_handles_to_copy, - u32 num_handles_to_move, bool validate_header = true) { + u32 num_handles_to_move, u32 num_domain_objects, + bool validate_header = true) { if (validate_header) { ValidateHeader(); } - return {*context, normal_params_size, num_handles_to_copy, num_handles_to_move}; + return {*context, normal_params_size, num_handles_to_copy, num_handles_to_move, + num_domain_objects}; } template diff --git a/src/core/hle/service/sm/sm.cpp b/src/core/hle/service/sm/sm.cpp index 6bfd6c50e..9bae34148 100644 --- a/src/core/hle/service/sm/sm.cpp +++ b/src/core/hle/service/sm/sm.cpp @@ -99,7 +99,7 @@ void SM::GetService(Kernel::HLERequestContext& ctx) { auto client_port = service_manager->GetServicePort(name); if (client_port.Failed()) { - IPC::RequestBuilder rb = rp.MakeBuilder(2, 0, 0); + IPC::RequestBuilder rb = rp.MakeBuilder(2, 0, 0, 0); rb.Push(client_port.Code()); LOG_ERROR(Service_SM, "called service=%s -> error 0x%08X", name.c_str(), client_port.Code().raw); @@ -111,7 +111,7 @@ void SM::GetService(Kernel::HLERequestContext& ctx) { if (session.Succeeded()) { LOG_DEBUG(Service_SM, "called service=%s -> session=%u", name.c_str(), (*session)->GetObjectId()); - IPC::RequestBuilder rb = rp.MakeBuilder(2, 0, 1); + IPC::RequestBuilder rb = rp.MakeBuilder(2, 0, 1, 0); rb.Push(session.Code()); rb.PushMoveObjects(std::move(session).Unwrap()); }