summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/hle/service/filesystem/fsp_srv.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/core/hle/service/filesystem/fsp_srv.cpp b/src/core/hle/service/filesystem/fsp_srv.cpp
index 06547e063..e2bb692c5 100644
--- a/src/core/hle/service/filesystem/fsp_srv.cpp
+++ b/src/core/hle/service/filesystem/fsp_srv.cpp
@@ -781,16 +781,17 @@ void FSP_SRV::CreateSaveDataFileSystem(Kernel::HLERequestContext& ctx) {
781} 781}
782 782
783void FSP_SRV::OpenSaveDataFileSystem(Kernel::HLERequestContext& ctx) { 783void FSP_SRV::OpenSaveDataFileSystem(Kernel::HLERequestContext& ctx) {
784 IPC::RequestParser rp{ctx}; 784 LOG_INFO(Service_FS, "called.");
785
786 auto space_id = rp.PopRaw<FileSys::SaveDataSpaceId>();
787 auto unk = rp.Pop<u32>();
788 LOG_INFO(Service_FS, "called with unknown={:08X}", unk);
789 785
790 auto save_struct = rp.PopRaw<FileSys::SaveDataDescriptor>(); 786 struct Parameters {
787 FileSys::SaveDataSpaceId save_data_space_id;
788 FileSys::SaveDataDescriptor descriptor;
789 };
791 790
792 auto dir = OpenSaveData(space_id, save_struct); 791 IPC::RequestParser rp{ctx};
792 const auto parameters = rp.PopRaw<Parameters>();
793 793
794 auto dir = OpenSaveData(parameters.save_data_space_id, parameters.descriptor);
794 if (dir.Failed()) { 795 if (dir.Failed()) {
795 IPC::ResponseBuilder rb{ctx, 2, 0, 0}; 796 IPC::ResponseBuilder rb{ctx, 2, 0, 0};
796 rb.Push(FileSys::ERROR_ENTITY_NOT_FOUND); 797 rb.Push(FileSys::ERROR_ENTITY_NOT_FOUND);