Kaynağa Gözat

hle_ipc: Only copy necessary fields for outgoing command buffer.

bunnei 8 yıl önce
ebeveyn
işleme
654fae29c1
1 değiştirilmiş dosya ile 1 ekleme ve 1 silme
  1. 1 1
      src/core/hle/kernel/hle_ipc.cpp

+ 1 - 1
src/core/hle/kernel/hle_ipc.cpp

@@ -120,7 +120,7 @@ ResultCode HLERequestContext::WriteToOutgoingCommandBuffer(u32_le* dst_cmdbuf, P
                                                            HandleTable& dst_table) {
                                                            HandleTable& dst_table) {
     ParseCommandBuffer(&cmd_buf[0], false);
     ParseCommandBuffer(&cmd_buf[0], false);
     size_t untranslated_size = data_payload_offset + command_header->data_size;
     size_t untranslated_size = data_payload_offset + command_header->data_size;
-    std::copy_n(cmd_buf.begin(), 64, dst_cmdbuf);
+    std::copy_n(cmd_buf.begin(), untranslated_size, dst_cmdbuf);
 
 
     if (command_header->enable_handle_descriptor) {
     if (command_header->enable_handle_descriptor) {
         size_t command_size = untranslated_size + handle_descriptor_header->num_handles_to_copy +
         size_t command_size = untranslated_size + handle_descriptor_header->num_handles_to_copy +