diff options
author | ameerj <52414509+ameerj@users.noreply.github.com> | 2022-12-16 04:30:42 +0100 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2022-12-16 04:30:42 +0100 |
commit | 12c0f682e617b9c03ef2ce5e0815274e8972bf40 (patch) | |
tree | 3f4ad0e0208443293b0450cf865dd0b70faf5b92 /src/core/hle/kernel | |
parent | Merge pull request #9431 from liamwhite/sixty-five-oh-two (diff) | |
download | yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.tar yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.tar.gz yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.tar.bz2 yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.tar.lz yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.tar.xz yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.tar.zst yuzu-12c0f682e617b9c03ef2ce5e0815274e8972bf40.zip |
Diffstat (limited to 'src/core/hle/kernel')
-rw-r--r-- | src/core/hle/kernel/hle_ipc.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/hle/kernel/hle_ipc.cpp b/src/core/hle/kernel/hle_ipc.cpp index 06010b8d1..e6479c131 100644 --- a/src/core/hle/kernel/hle_ipc.cpp +++ b/src/core/hle/kernel/hle_ipc.cpp @@ -167,6 +167,9 @@ void HLERequestContext::ParseCommandBuffer(const KHandleTable& handle_table, u32 } if (incoming) { // Populate the object lists with the data in the IPC request. + incoming_copy_handles.reserve(handle_descriptor_header->num_handles_to_copy); + incoming_move_handles.reserve(handle_descriptor_header->num_handles_to_move); + for (u32 handle = 0; handle < handle_descriptor_header->num_handles_to_copy; ++handle) { incoming_copy_handles.push_back(rp.Pop<Handle>()); } @@ -181,6 +184,11 @@ void HLERequestContext::ParseCommandBuffer(const KHandleTable& handle_table, u32 } } + buffer_x_desciptors.reserve(command_header->num_buf_x_descriptors); + buffer_a_desciptors.reserve(command_header->num_buf_a_descriptors); + buffer_b_desciptors.reserve(command_header->num_buf_b_descriptors); + buffer_w_desciptors.reserve(command_header->num_buf_w_descriptors); + for (u32 i = 0; i < command_header->num_buf_x_descriptors; ++i) { buffer_x_desciptors.push_back(rp.PopRaw<IPC::BufferDescriptorX>()); } |