diff options
Diffstat (limited to '')
| -rw-r--r-- | src/core/core.cpp | 4 | ||||
| -rw-r--r-- | src/core/core.h | 4 | ||||
| -rw-r--r-- | src/core/file_sys/bis_factory.cpp | 10 | ||||
| -rw-r--r-- | src/core/file_sys/bis_factory.h | 2 | ||||
| -rw-r--r-- | src/core/hle/service/filesystem/filesystem.cpp | 2 |
5 files changed, 11 insertions, 11 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index 05b1d2b92..44aaba242 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp | |||
| @@ -629,11 +629,11 @@ Loader::AppLoader& System::GetAppLoader() const { | |||
| 629 | return *impl->app_loader; | 629 | return *impl->app_loader; |
| 630 | } | 630 | } |
| 631 | 631 | ||
| 632 | void System::SetFilesystem(std::shared_ptr<FileSys::VfsFilesystem> vfs) { | 632 | void System::SetFilesystem(FileSys::VirtualFilesystem vfs) { |
| 633 | impl->virtual_filesystem = std::move(vfs); | 633 | impl->virtual_filesystem = std::move(vfs); |
| 634 | } | 634 | } |
| 635 | 635 | ||
| 636 | std::shared_ptr<FileSys::VfsFilesystem> System::GetFilesystem() const { | 636 | FileSys::VirtualFilesystem System::GetFilesystem() const { |
| 637 | return impl->virtual_filesystem; | 637 | return impl->virtual_filesystem; |
| 638 | } | 638 | } |
| 639 | 639 | ||
diff --git a/src/core/core.h b/src/core/core.h index 5c6cfbffe..83ded63a5 100644 --- a/src/core/core.h +++ b/src/core/core.h | |||
| @@ -316,9 +316,9 @@ public: | |||
| 316 | Service::SM::ServiceManager& ServiceManager(); | 316 | Service::SM::ServiceManager& ServiceManager(); |
| 317 | const Service::SM::ServiceManager& ServiceManager() const; | 317 | const Service::SM::ServiceManager& ServiceManager() const; |
| 318 | 318 | ||
| 319 | void SetFilesystem(std::shared_ptr<FileSys::VfsFilesystem> vfs); | 319 | void SetFilesystem(FileSys::VirtualFilesystem vfs); |
| 320 | 320 | ||
| 321 | std::shared_ptr<FileSys::VfsFilesystem> GetFilesystem() const; | 321 | FileSys::VirtualFilesystem GetFilesystem() const; |
| 322 | 322 | ||
| 323 | void RegisterCheatList(const std::vector<Memory::CheatEntry>& list, | 323 | void RegisterCheatList(const std::vector<Memory::CheatEntry>& list, |
| 324 | const std::array<u8, 0x20>& build_id, VAddr main_region_begin, | 324 | const std::array<u8, 0x20>& build_id, VAddr main_region_begin, |
diff --git a/src/core/file_sys/bis_factory.cpp b/src/core/file_sys/bis_factory.cpp index e04a54c3c..7c6304ff0 100644 --- a/src/core/file_sys/bis_factory.cpp +++ b/src/core/file_sys/bis_factory.cpp | |||
| @@ -4,10 +4,10 @@ | |||
| 4 | 4 | ||
| 5 | #include <fmt/format.h> | 5 | #include <fmt/format.h> |
| 6 | #include "common/file_util.h" | 6 | #include "common/file_util.h" |
| 7 | #include "core/core.h" | ||
| 8 | #include "core/file_sys/bis_factory.h" | 7 | #include "core/file_sys/bis_factory.h" |
| 9 | #include "core/file_sys/mode.h" | 8 | #include "core/file_sys/mode.h" |
| 10 | #include "core/file_sys/registered_cache.h" | 9 | #include "core/file_sys/registered_cache.h" |
| 10 | #include "core/file_sys/vfs.h" | ||
| 11 | 11 | ||
| 12 | namespace FileSys { | 12 | namespace FileSys { |
| 13 | 13 | ||
| @@ -81,11 +81,11 @@ VirtualDir BISFactory::OpenPartition(BisPartitionId id) const { | |||
| 81 | } | 81 | } |
| 82 | } | 82 | } |
| 83 | 83 | ||
| 84 | VirtualFile BISFactory::OpenPartitionStorage(BisPartitionId id) const { | 84 | VirtualFile BISFactory::OpenPartitionStorage(BisPartitionId id, |
| 85 | VirtualFilesystem file_system) const { | ||
| 85 | auto& keys = Core::Crypto::KeyManager::Instance(); | 86 | auto& keys = Core::Crypto::KeyManager::Instance(); |
| 86 | Core::Crypto::PartitionDataManager pdm{ | 87 | Core::Crypto::PartitionDataManager pdm{file_system->OpenDirectory( |
| 87 | Core::System::GetInstance().GetFilesystem()->OpenDirectory( | 88 | Common::FS::GetUserPath(Common::FS::UserPath::SysDataDir), Mode::Read)}; |
| 88 | Common::FS::GetUserPath(Common::FS::UserPath::SysDataDir), Mode::Read)}; | ||
| 89 | keys.PopulateFromPartitionData(pdm); | 89 | keys.PopulateFromPartitionData(pdm); |
| 90 | 90 | ||
| 91 | switch (id) { | 91 | switch (id) { |
diff --git a/src/core/file_sys/bis_factory.h b/src/core/file_sys/bis_factory.h index 438d3f8d8..136485881 100644 --- a/src/core/file_sys/bis_factory.h +++ b/src/core/file_sys/bis_factory.h | |||
| @@ -52,7 +52,7 @@ public: | |||
| 52 | VirtualDir GetModificationDumpRoot(u64 title_id) const; | 52 | VirtualDir GetModificationDumpRoot(u64 title_id) const; |
| 53 | 53 | ||
| 54 | VirtualDir OpenPartition(BisPartitionId id) const; | 54 | VirtualDir OpenPartition(BisPartitionId id) const; |
| 55 | VirtualFile OpenPartitionStorage(BisPartitionId id) const; | 55 | VirtualFile OpenPartitionStorage(BisPartitionId id, VirtualFilesystem file_system) const; |
| 56 | 56 | ||
| 57 | VirtualDir GetImageDirectory() const; | 57 | VirtualDir GetImageDirectory() const; |
| 58 | 58 | ||
diff --git a/src/core/hle/service/filesystem/filesystem.cpp b/src/core/hle/service/filesystem/filesystem.cpp index 2cee1193c..54a5fb84b 100644 --- a/src/core/hle/service/filesystem/filesystem.cpp +++ b/src/core/hle/service/filesystem/filesystem.cpp | |||
| @@ -379,7 +379,7 @@ ResultVal<FileSys::VirtualFile> FileSystemController::OpenBISPartitionStorage( | |||
| 379 | return FileSys::ERROR_ENTITY_NOT_FOUND; | 379 | return FileSys::ERROR_ENTITY_NOT_FOUND; |
| 380 | } | 380 | } |
| 381 | 381 | ||
| 382 | auto part = bis_factory->OpenPartitionStorage(id); | 382 | auto part = bis_factory->OpenPartitionStorage(id, system.GetFilesystem()); |
| 383 | if (part == nullptr) { | 383 | if (part == nullptr) { |
| 384 | return FileSys::ERROR_INVALID_ARGUMENT; | 384 | return FileSys::ERROR_INVALID_ARGUMENT; |
| 385 | } | 385 | } |