summaryrefslogtreecommitdiffstats
path: root/src/core/file_sys/vfs.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* vfs: Replace cstr concat with char concatMerry2023-01-011-3/+3
|
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* vfs: Partially implement GetFileTimeStampRawMorph2021-09-141-0/+4
| | | | Gets rid of homebrew warnings using this func
* general: Remove extraneous includesMorph2021-06-131-1/+0
|
* common: fs: Rework the Common Filesystem interface to make use of std::filesystem (#6270)Morph2021-05-261-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common: fs: fs_types: Create filesystem types Contains various filesystem types used by the Common::FS library * common: fs: fs_util: Add std::string to std::u8string conversion utility * common: fs: path_util: Add utlity functions for paths Contains various utility functions for getting or manipulating filesystem paths used by the Common::FS library * common: fs: file: Rewrite the IOFile implementation * common: fs: Reimplement Common::FS library using std::filesystem * common: fs: fs_paths: Add fs_paths to replace common_paths * common: fs: path_util: Add the rest of the path functions * common: Remove the previous Common::FS implementation * general: Remove unused fs includes * string_util: Remove unused function and include * nvidia_flags: Migrate to the new Common::FS library * settings: Migrate to the new Common::FS library * logging: backend: Migrate to the new Common::FS library * core: Migrate to the new Common::FS library * perf_stats: Migrate to the new Common::FS library * reporter: Migrate to the new Common::FS library * telemetry_session: Migrate to the new Common::FS library * key_manager: Migrate to the new Common::FS library * bis_factory: Migrate to the new Common::FS library * registered_cache: Migrate to the new Common::FS library * xts_archive: Migrate to the new Common::FS library * service: acc: Migrate to the new Common::FS library * applets/profile: Migrate to the new Common::FS library * applets/web: Migrate to the new Common::FS library * service: filesystem: Migrate to the new Common::FS library * loader: Migrate to the new Common::FS library * gl_shader_disk_cache: Migrate to the new Common::FS library * nsight_aftermath_tracker: Migrate to the new Common::FS library * vulkan_library: Migrate to the new Common::FS library * configure_debug: Migrate to the new Common::FS library * game_list_worker: Migrate to the new Common::FS library * config: Migrate to the new Common::FS library * configure_filesystem: Migrate to the new Common::FS library * configure_per_game_addons: Migrate to the new Common::FS library * configure_profile_manager: Migrate to the new Common::FS library * configure_ui: Migrate to the new Common::FS library * input_profiles: Migrate to the new Common::FS library * yuzu_cmd: config: Migrate to the new Common::FS library * yuzu_cmd: Migrate to the new Common::FS library * vfs_real: Migrate to the new Common::FS library * vfs: Migrate to the new Common::FS library * vfs_libzip: Migrate to the new Common::FS library * service: bcat: Migrate to the new Common::FS library * yuzu: main: Migrate to the new Common::FS library * vfs_real: Delete the contents of an existing file in CreateFile Current usages of CreateFile expect to delete the contents of an existing file, retain this behavior for now. * input_profiles: Don't iterate the input profile dir if it does not exist Silences an error produced in the log if the directory does not exist. * game_list_worker: Skip parsing file if the returned VfsFile is nullptr Prevents crashes in GetLoader when the virtual file is nullptr * common: fs: Validate paths for path length * service: filesystem: Open the mod load directory as read only
* vfs: Use existing type aliases consistentlyLioncash2020-12-101-16/+16
| | | | | Makes use of the VirtualDir and VirtualFile aliases across the board instead of having a few isolated places that don't use it.
* General: Make use of std::nullopt where applicableLioncash2020-09-221-3/+4
| | | | | | | | Allows some implementations to avoid completely zeroing out the internal buffer of the optional, and instead only set the validity byte within the structure. This also makes it consistent how we return empty optionals.
* common/fileutil: Convert namespace to Common::FSLioncash2020-08-161-28/+28
| | | | | | | | | | | | Migrates a remaining common file over to the Common namespace, making it consistent with the rest of common files. This also allows for high-traffic FS related code to alias the filesystem function namespace as namespace FS = Common::FS; for more concise typing.
* file_sys: Override missing mutating functions to be stubbed out for ReadOnlyVfsDirectory by defaultLioncash2018-12-011-0/+20
| | | | Ensures that read only indeed means read only.
* service/fsp_srv: Implement CleanDirectoryRecursivelyLioncash2018-12-011-0/+26
| | | | | | | | | | | | | | | This is the same behavior-wise as DeleteDirectoryRecursively, with the only difference being that it doesn't delete the top level directory in the hierarchy, so given: root_dir/ - some_dir/ - File.txt - OtherFile.txt The end result is just: root_dir/
* global: Use std::optional instead of boost::optional (#1578)Frederic L2018-10-301-2/+2
| | | | | | | | | | | | | | | | * get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
* vfs: Handle failure of file reading within VfsRawCopy()Lioncash2018-10-241-2/+6
| | | | Also gets rid of an unused variable.
* vfs/etc: Append std:: to size_t usagesLioncash2018-09-261-3/+3
| | | | | Given we just recently had a patch backport this from citra, let's try and keep the convention uniform.
* fsmitm: Cleanup and modernize fsmitm portZach Hilman2018-09-241-2/+2
|
* vfs: Add and rewite VfsRawCopy functionsZach Hilman2018-09-221-4/+32
|
* vfs: Add GetEntries methodZach Hilman2018-09-221-0/+9
| | | | Maps name string to directory or file.
* Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi2018-09-151-11/+11
|
* vfs: Add GetOrCreateDirectoryRelative methodZach Hilman2018-08-231-0/+7
|
* vfs: Replace mode.h include with forward declarations where applicableLioncash2018-08-211-0/+1
| | | | | Avoids the need to rebuild these source files if the mode header changes.
* vfs: Use sanitized paths within MoveFile() and MoveDirectory()Lioncash2018-08-121-10/+10
| | | | | | Previously these were being unused (or partially unused). While we're at it, use better naming to make it visibly obvious which variant of the path is being used.
* vfs: Add VfsFilesystem interface and default implementationZach Hilman2018-08-091-0/+148
|
* Make XCI comply to review and style guidelinesZach Hilman2018-08-011-4/+3
|
* Remove files that are not usedZach Hilman2018-08-011-0/+21
|
* RomFS ExtractionZach Hilman2018-07-281-0/+23
|
* file_util, vfs: Use std::string_view where applicableLioncash2018-07-221-38/+73
| | | | | Avoids unnecessary construction of std::string instances where applicable.
* vfs: Make WriteBytes() overload taking a std::vector pass the std::vector by const referenceLioncash2018-07-211-1/+1
| | | | | Given the data is intended to be directly written, there's no need to take the std::vector by value and copy the data.
* vfs: Deduplicate accumulation code in VfsDirectory's GetSize()Lioncash2018-07-191-6/+6
| | | | We can just use a generic lambda to avoid writing the same thing twice.
* Virtual Filesystem 2: Electric Boogaloo (#676)Zach Hilman2018-07-191-0/+238
| | | | | | | | | | * Virtual Filesystem * Fix delete bug and documentate * Review fixes + other stuff * Fix puyo regression
* Revert "Virtual Filesystem (#597)"bunnei2018-07-081-187/+0
| | | | This reverts commit 77c684c1140f6bf3fb7d4560d06d2efb1a2ee5e2.
* Virtual Filesystem (#597)Zach Hilman2018-07-061-0/+187
* Add VfsFile and VfsDirectory classes * Finish abstract Vfs classes * Implement RealVfsFile (computer fs backend) * Finish RealVfsFile and RealVfsDirectory * Finished OffsetVfsFile * More changes * Fix import paths * Major refactor * Remove double const * Use experimental/filesystem or filesystem depending on compiler * Port partition_filesystem * More changes * More Overhaul * FSP_SRV fixes * Fixes and testing * Try to get filesystem to compile * Filesystem on linux * Remove std::filesystem and document/test * Compile fixes * Missing include * Bug fixes * Fixes * Rename v_file and v_dir * clang-format fix * Rename NGLOG_* to LOG_* * Most review changes * Fix TODO * Guess 'main' to be Directory by filename