aboutsummaryrefslogtreecommitdiff
path: root/src/core/file_sys
AgeCommit message (Collapse)Author
2022-04-07patch_manager: Apply layered exefs patches from 'atmosphere' SD directorytech-ticks
2022-03-27registered_cache: Prevent nullptr dereference when accumulating filesMorph
For whatever reason, nca_file/dir can be nullptr in the list of files/dirs. I have not determined the cause of this yet, so add a nullptr check for these prior to dereferencing them.
2022-03-20general: Fix clang/gcc build errorsameerj
2022-03-19common: Reduce unused includesameerj
2022-03-19core: Reduce unused includesameerj
2022-02-15Dump patched exefs rather than baseKelebek1
2022-02-02general: Replace NonCopyable struct with equivalentsLioncash
2021-11-10program_metadata: Add default ThreadInfo kernel capabilityOatmealDome
2021-11-04general: Get the current process program id directly from the systemMorph
This allows us to avoid including KProcess' header file in files that only need to get the current process' program id.
2021-11-04general: Rename GetTitleID to GetProgramIDMorph
2021-11-03core: Fix transitive include build errorsameerj
2021-11-03core: Remove unused includesameerj
2021-11-02general: Remove MakeResult helpersMorph
This is made obsolete by the presence of implicit constructors.
2021-10-28file_sys: control_metadata: Add BrazilianPortugueseMorph
2021-10-01Merge pull request #7102 from Morph1984/remove-boxcatbunnei
Remove Boxcat BCAT backend
2021-09-29style: Remove extra space preceding the :: operatorMorph
2021-09-28file_sys: Remove vfs_libzipMorph
2021-09-14vfs: Partially implement GetFileTimeStampRawMorph
Gets rid of homebrew warnings using this func
2021-09-11file_sys/kernel_executable: Add missing <string> includeMorph
2021-07-20file_sys: Support load game collection (#6582)Feng Chen
Adds support for loading games with multiple programs embedded within such as the Dragon Quest 1+2+3 Collection
2021-07-12content_archive: Remove unnecessary include to <ranges>ReinUsesLisp
Fixes build issues on clang.
2021-06-28patch_manager: Do not apply LayeredFS mods when dumpingMorph
We should not apply any mods when dumping a game's RomFS.
2021-06-28filesystem: Open a read-only directory for SDMC modsMorph
This prevents mod files from being locked due to the read-only share flag in Windows.
2021-06-28core: Simplify SDMC mod loadinglat9nq
If someone else wants to support other mod formats in the SDMC directory, that can be added later. For now, just allow RomFS modding here and force people to do other types of mods the old way. Addresses review comments. Co-authored-by: LC <mathew1800@gmail.com>
2021-06-28core: Support LayeredFS mod from SDMC directorylat9nq
Enables loading a mod directly from `[yuzu data directory]/sdmc/atmosphere/contents/[title_id]`. For use with some homebrew mod managers.
2021-06-23General: Resolve fmt specifiers to adhere to 8.0.0 API where applicableLioncash
Also removes some deprecated API usages.
2021-06-22Merge pull request #6493 from Morph1984/fs-nodiscardbunnei
common: fs: Miscellaneous changes
2021-06-22vfs_real: Fix Mode to FileAccessMode conversionMorph
These enforce requiring the file to exist prior to opening.
2021-06-16hle: api_version: Add HLE API version constantsMorph
2021-06-13general: Remove extraneous includesMorph
2021-06-10Fix GCC undefined behavior sanitizer.Markus Wick
* Wrong alignment in u64 LOG_DEBUG -> memcpy. * Huge shift exponent in stride calculation for linear buffer, unused result -> skipped. * Large shift in buffer cache if word = 0, skip checking for set bits. Non of those were critical, so this should not change any behavior. At least with the assumption, that the last one used masking behavior, which always yield continuous_bits = 0.
2021-06-02fspsrv: Implement DisableAutoSaveDataCreation (#6355)Chloe
- Used by Mii Edit
2021-06-02general: Replace RESULT_UNKNOWN with ResultUnknownMorph
Transition to PascalCase for result names.
2021-05-25common: fs: Rework the Common Filesystem interface to make use of ↵Morph
std::filesystem (#6270) * 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
2021-05-16Merge pull request #6319 from Morph1984/no-install-basebunnei
main: Prevent installing base titles into NAND
2021-05-16main: Prevent installing base titles into NANDMorph
Many users have been installing their base titles into NAND instead of adding them into the games list. This prevents users from installing any base titles and warns the user about the action.
2021-05-16core: Make variable shadowing a compile-time errorLioncash
Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely.
2021-05-05hle: kernel: Rename Process to KProcess.bunnei
2021-05-02Merge pull request #6269 from lioncash/file-shadowbunnei
file_sys: Resolve cases of variable shadowing
2021-05-02file_sys: Resolve cases of variable shadowingLioncash
Brings us closer to enabling -Wshadow as an error in the core code.
2021-05-01service: filesystem: Return proper error codes for CreateFileMorph
This improves the accuracy of CreateFile by returning the correct error codes on certain conditions (parent directory does not exist, path already exists). This fixes saving and the loading of existing saves in New Pokemon Snap
2021-04-24Merge pull request #6230 from Morph1984/default-resource-sizebunnei
program_metadata: Set a default resource size when a NPDM is not present
2021-04-23program_metadata: Set a default resource size when a NPDM is not presentMorph
Sets a default size of 0x1FE00000 bytes (510 MiB) for the system_resource_size when a NPDM is not present.
2021-04-23program_metadata: Explicitly specify copy/move functionsLioncash
The generation of the copy assignment operators are deprecated on being generated when a user-provided destructor is present. We can explicitly specify that we desire this behavior to keep the class forward compatible with future standards.
2021-04-14common: Move settings to common from core.bunnei
- Removes a dependency on core and input_common from common.
2021-03-27pctl: Rework how pctl works to be more accurateChloe Marcec
Introduces the usage of compatibilities to allow it the module to be closer to how it works on hardware.
2021-03-16Merge pull request #6070 from Morph1984/sysver-11.0.1bunnei
system_version: Update to 11.0.1
2021-03-14system_version: Update to 11.0.1Morph
2021-03-14system_archive: Update NgWord archive versionMorph
2021-01-23vfs_real: When moving files or directories, don't assume file opening will ↵comex
succeed Found this via a warning, but it's a substantive fix. Since this is only for a cache, it should be safe to silently drop the entry if opening fails. I think.