diff options
author | Lioncash <mathew1800@gmail.com> | 2019-03-07 22:44:28 +0100 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2019-03-08 05:34:37 +0100 |
commit | fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8 (patch) | |
tree | efe360f1934201e7950a61e710b388f799dd8ad7 /src/core/hle/kernel/hle_ipc.cpp | |
parent | travis: Bump macOS version to 10.14 (diff) | |
download | yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.tar yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.tar.gz yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.tar.bz2 yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.tar.lz yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.tar.xz yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.tar.zst yuzu-fbb82e61e35a4e40154ad9a9fcb1ecc46f6622b8.zip |
Diffstat (limited to 'src/core/hle/kernel/hle_ipc.cpp')
-rw-r--r-- | src/core/hle/kernel/hle_ipc.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/core/hle/kernel/hle_ipc.cpp b/src/core/hle/kernel/hle_ipc.cpp index cbffff017..fe710eb6e 100644 --- a/src/core/hle/kernel/hle_ipc.cpp +++ b/src/core/hle/kernel/hle_ipc.cpp @@ -86,7 +86,7 @@ HLERequestContext::~HLERequestContext() = default; void HLERequestContext::ParseCommandBuffer(const HandleTable& handle_table, u32_le* src_cmdbuf, bool incoming) { IPC::RequestParser rp(src_cmdbuf); - command_header = std::make_shared<IPC::CommandHeader>(rp.PopRaw<IPC::CommandHeader>()); + command_header = rp.PopRaw<IPC::CommandHeader>(); if (command_header->type == IPC::CommandType::Close) { // Close does not populate the rest of the IPC header @@ -95,8 +95,7 @@ void HLERequestContext::ParseCommandBuffer(const HandleTable& handle_table, u32_ // If handle descriptor is present, add size of it if (command_header->enable_handle_descriptor) { - handle_descriptor_header = - std::make_shared<IPC::HandleDescriptorHeader>(rp.PopRaw<IPC::HandleDescriptorHeader>()); + handle_descriptor_header = rp.PopRaw<IPC::HandleDescriptorHeader>(); if (handle_descriptor_header->send_current_pid) { rp.Skip(2, false); } @@ -140,16 +139,15 @@ void HLERequestContext::ParseCommandBuffer(const HandleTable& handle_table, u32_ // If this is an incoming message, only CommandType "Request" has a domain header // All outgoing domain messages have the domain header, if only incoming has it if (incoming || domain_message_header) { - domain_message_header = - std::make_shared<IPC::DomainMessageHeader>(rp.PopRaw<IPC::DomainMessageHeader>()); + domain_message_header = rp.PopRaw<IPC::DomainMessageHeader>(); } else { - if (Session()->IsDomain()) + if (Session()->IsDomain()) { LOG_WARNING(IPC, "Domain request has no DomainMessageHeader!"); + } } } - data_payload_header = - std::make_shared<IPC::DataPayloadHeader>(rp.PopRaw<IPC::DataPayloadHeader>()); + data_payload_header = rp.PopRaw<IPC::DataPayloadHeader>(); data_payload_offset = rp.GetCurrentOffset(); |