summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/filesystem/filesystem.cpp
diff options
context:
space:
mode:
authorZach Hilman <zachhilman@gmail.com>2018-12-28 06:03:38 +0100
committerZach Hilman <zachhilman@gmail.com>2019-03-27 03:05:37 +0100
commit60f39060c68605c6b3628cea37ef4353f06b5d0e (patch)
tree880bd7ae3c02ce8ba3772b06ca8da6b062452113 /src/core/hle/service/filesystem/filesystem.cpp
parentcore: Store system-wide ContentProvider for the emulator (diff)
downloadyuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.tar
yuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.tar.gz
yuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.tar.bz2
yuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.tar.lz
yuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.tar.xz
yuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.tar.zst
yuzu-60f39060c68605c6b3628cea37ef4353f06b5d0e.zip
Diffstat (limited to 'src/core/hle/service/filesystem/filesystem.cpp')
-rw-r--r--src/core/hle/service/filesystem/filesystem.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/core/hle/service/filesystem/filesystem.cpp b/src/core/hle/service/filesystem/filesystem.cpp
index c6da2df43..db5017dd5 100644
--- a/src/core/hle/service/filesystem/filesystem.cpp
+++ b/src/core/hle/service/filesystem/filesystem.cpp
@@ -388,11 +388,6 @@ void WriteSaveDataSize(FileSys::SaveDataType type, u64 title_id, u128 user_id,
save_data_factory->WriteSaveDataSize(type, title_id, user_id, new_value);
}
-FileSys::RegisteredCacheUnion GetUnionContents() {
- return FileSys::RegisteredCacheUnion{
- {GetSystemNANDContents(), GetUserNANDContents(), GetSDMCContents()}};
-}
-
FileSys::RegisteredCache* GetSystemNANDContents() {
LOG_TRACE(Service_FS, "Opening System NAND Contents");
@@ -457,6 +452,10 @@ void CreateFactories(FileSys::VfsFilesystem& vfs, bool overwrite) {
if (bis_factory == nullptr) {
bis_factory =
std::make_unique<FileSys::BISFactory>(nand_directory, load_directory, dump_directory);
+ Core::System::GetInstance().RegisterContentProvider(
+ FileSys::ContentProviderUnionSlot::SysNAND, bis_factory->GetSystemNANDContents());
+ Core::System::GetInstance().RegisterContentProvider(
+ FileSys::ContentProviderUnionSlot::UserNAND, bis_factory->GetUserNANDContents());
}
if (save_data_factory == nullptr) {
@@ -465,6 +464,8 @@ void CreateFactories(FileSys::VfsFilesystem& vfs, bool overwrite) {
if (sdmc_factory == nullptr) {
sdmc_factory = std::make_unique<FileSys::SDMCFactory>(std::move(sd_directory));
+ Core::System::GetInstance().RegisterContentProvider(FileSys::ContentProviderUnionSlot::SDMC,
+ sdmc_factory->GetSDMCContents());
}
}