Commit Graph

34 Commits (941a722ff1d862fa7b0c2ba73ff9c003324da281)

Author SHA1 Message Date
James 941a722ff1 Handle invalid filenames when renaming files/directories 8 years ago
wwylele 047a1586fe file_sys: lower log level for setting host path 8 years ago
Kloen c4f9cd3559 core: fix archive_sdmc.cpp warnings about unhandled enumeration value on OSX 8 years ago
wwylele 0647f86649 FileSys: w->rw permission lift only happens in SDMC archive 9 years ago
wwylele 93aa14e345 FileSys: add SDMCArchive
Now DiskArchive only serves for SDMC, then it should be just a "SDMCArchive"
9 years ago
Yuri Kunde Schlesner 84fbbe2629 Use negative priorities to avoid special-casing the self-include 9 years ago
Emmanuel Gil Peyrot ebdae19fd2 Remove empty newlines in #include blocks.
This makes clang-format useful on those.

Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
9 years ago
Emmanuel Gil Peyrot dc8479928c Sources: Run clang-format on everything. 9 years ago
MerryMage a06dcfeb61 Common: Remove Common::make_unique, use std::make_unique 9 years ago
Subv d26c6b3212 HLE/FS: Implemented GetFormatInfo
Format information is currently only implemented for the ExtSaveData, SharedExtSaveData and SaveData archives, the information is stored in a file alongside the root folder of the archive.
9 years ago
Emmanuel Gil Peyrot e5fcabdd69 Core: Cleanup file_sys includes. 10 years ago
Yuri Kunde Schlesner e1fbac3ca1 Common: Remove common.h 10 years ago
Yuri Kunde Schlesner 3f1a3952d7 FS: Allow multiple instances of the same archive type to be open at once 10 years ago
Subv 5244ac0e9c Archives: Addressed some comments 10 years ago
purpasmart96 ebfd831ccb License change 10 years ago
Subv ea9ce0fba7 Filesystem/Archives: Implemented the SaveData archive
The savedata for each game is stored in /savedata/<ProgramID> for NCCH files. ELF files and 3DSX files use the folder 0 because they have no ID information

Got rid of the code duplication in File and Directory

Files that deal with the host machine's file system now live in DiskFile, similarly for directories and DiskDirectory and archives with DiskArchive.

FS_U: Use the correct error code when a file wasn't found
10 years ago
Yuri Kunde Schlesner 83e6e4ffec FS.Archive: Clean up treatment of archives and their handles
- Refactor FS::Archive internals to make Archive creation and lifetime
  management clearer.
- Remove the "Archive as a File" hack.
- Implement 64-bit Archive handles.
11 years ago
Yuri Kunde Schlesner 0931a42af0 Service.FS: Rename FileSys::File to FileBackend 11 years ago
Yuri Kunde Schlesner d51afab0bc Service.FS: Rename FileSys::Directory to DirectoryBackend 11 years ago
Yuri Kunde Schlesner 0600e2d8b5 Convert old logging calls to new logging macros 11 years ago
archshift 20d2ed0950 Make OpenDirectory fail if the directory doesn't exist
This is in line with what the hardware itself does.

It does this by splitting the initial directory opening into Directory.Open(), which will return false if a stat fails.
Then, Archive::OpenDirectory will return nullptr, and archive.cpp will return an error code .
11 years ago
bunnei 5056329a80 Merge pull request #222 from archshift/renamexyz
Implemented RenameFile and RenameDirectory in FS:USER
11 years ago
archshift 139a4d91d9 Updated archive.cpp functions for proper error handling 11 years ago
vaguilar 223e76d51d Fixed formatting and switch statement warnings 11 years ago
archshift e5ff01c2cd Implemented RenameDirectory in FS:USER 11 years ago
archshift 45afc15aa6 Implemented RenameFile in FS:USER 11 years ago
archshift 8aeadbd95a Added DeleteFile and DeleteDirectory functions to FS:USER and the archives. 11 years ago
bunnei a3107a6b57 FileSys: Updated backend code to use FileSys::Path instead of string for paths. 11 years ago
archshift 04c90c395d Added CreateDirectory function to service/fs.cpp, and in Archive. 11 years ago
archshift a59f57d504 Use config files to store whether SDMC is enabled or not
Before, it used to use whether the directory actually existed. As a result, .citra-emu/sdmc was never auto-created (something quite confusing to me until I read through the logs).
11 years ago
Emmanuel Gil Peyrot 0be5c03176 FileSys: split the constructor into an Open method, in order to notify the opener something went wrong.
Kernel: Return an invalid handle to OpenFile when it failed to open.
11 years ago
Emmanuel Gil Peyrot d34673990b FileSys: Add forgotten docstrings. 11 years ago
Emmanuel Gil Peyrot c14e5713f5 Core: Add a method to obtain a Directory from an Archive. 11 years ago
Emmanuel Gil Peyrot e73caaefe5 Core: Add a passthrough backend for the filesystem, exposed as SDMC. 11 years ago