diff options
Diffstat (limited to 'src/core/hle')
-rw-r--r-- | src/core/hle/service/cfg/cfg.cpp | 1 | ||||
-rw-r--r-- | src/core/hle/service/fs/archive.cpp | 5 | ||||
-rw-r--r-- | src/core/hle/service/fs/archive.h | 2 | ||||
-rw-r--r-- | src/core/hle/service/fs/fs_user.cpp | 2 |
4 files changed, 4 insertions, 6 deletions
diff --git a/src/core/hle/service/cfg/cfg.cpp b/src/core/hle/service/cfg/cfg.cpp index bb2c55612..525432957 100644 --- a/src/core/hle/service/cfg/cfg.cpp +++ b/src/core/hle/service/cfg/cfg.cpp @@ -310,6 +310,7 @@ ResultCode UpdateConfigNANDSavegame() { ResultCode FormatConfig() { ResultCode res = DeleteConfigNANDSaveFile(); + // The delete command fails if the file doesn't exist, so we have to check that too if (!res.IsSuccess() && res.description != ErrorDescription::FS_NotFound) return res; // Delete the old data diff --git a/src/core/hle/service/fs/archive.cpp b/src/core/hle/service/fs/archive.cpp index 63381250a..676a2ee56 100644 --- a/src/core/hle/service/fs/archive.cpp +++ b/src/core/hle/service/fs/archive.cpp @@ -308,11 +308,8 @@ ResultVal<Kernel::SharedPtr<File>> OpenFileFromArchive(ArchiveHandle archive_han return ERR_INVALID_HANDLE; auto backend = archive->OpenFile(path, mode); - if (backend.Failed()) { + if (backend.Failed()) return backend.Code(); - return ResultCode(ErrorDescription::FS_NotFound, ErrorModule::FS, - ErrorSummary::NotFound, ErrorLevel::Status); - } auto file = Kernel::SharedPtr<File>(new File(backend.MoveFrom(), path)); return MakeResult<Kernel::SharedPtr<File>>(std::move(file)); diff --git a/src/core/hle/service/fs/archive.h b/src/core/hle/service/fs/archive.h index b17d7c902..006606740 100644 --- a/src/core/hle/service/fs/archive.h +++ b/src/core/hle/service/fs/archive.h @@ -183,7 +183,7 @@ ResultVal<u64> GetFreeBytesInArchive(ArchiveHandle archive_handle); */ ResultCode FormatArchive(ArchiveIdCode id_code, const FileSys::ArchiveFormatInfo& format_info, const FileSys::Path& path = FileSys::Path()); -/* +/** * Retrieves the format info about the archive of the specified type and path. * The format info is supplied by the client code when creating archives. * @param id_code The id of the archive diff --git a/src/core/hle/service/fs/fs_user.cpp b/src/core/hle/service/fs/fs_user.cpp index ff7a9975e..3ec7ceb30 100644 --- a/src/core/hle/service/fs/fs_user.cpp +++ b/src/core/hle/service/fs/fs_user.cpp @@ -250,7 +250,7 @@ static void CreateFile(Service::Interface* self) { FileSys::Path file_path(filename_type, filename_size, filename_ptr); - LOG_DEBUG(Service_FS, "type=%d size=%lld data=%s", filename_type, filename_size, file_path.DebugStr().c_str()); + LOG_DEBUG(Service_FS, "type=%d size=%llu data=%s", filename_type, filename_size, file_path.DebugStr().c_str()); cmd_buff[1] = CreateFileInArchive(archive_handle, file_path, file_size).raw; } |