summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Zach Hilman2019-04-10 12:11:50 -0400
committerGravatar Zach Hilman2019-09-21 16:43:10 -0400
commit256a50ad15a1666a40c8aeff9759664f9e7a85a9 (patch)
tree1a1ed641268457474288d1be68d62a9f62129a6d /src
parentbis_factory: Add accessors for BIS placeholder caches (diff)
downloadyuzu-256a50ad15a1666a40c8aeff9759664f9e7a85a9.tar.gz
yuzu-256a50ad15a1666a40c8aeff9759664f9e7a85a9.tar.xz
yuzu-256a50ad15a1666a40c8aeff9759664f9e7a85a9.zip
bis_factory: Fix mod loader edge-case with homebrew title IDs
Fixes a bug where homebrew that has a title ID with the update bit set can cause issues with the PatchManager
Diffstat (limited to 'src')
-rw-r--r--src/core/file_sys/bis_factory.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/file_sys/bis_factory.cpp b/src/core/file_sys/bis_factory.cpp
index cbeb2f73a..6cd0a98eb 100644
--- a/src/core/file_sys/bis_factory.cpp
+++ b/src/core/file_sys/bis_factory.cpp
@@ -48,7 +48,7 @@ PlaceholderCache* BISFactory::GetUserNANDPlaceholder() const {
48 48
49VirtualDir BISFactory::GetModificationLoadRoot(u64 title_id) const { 49VirtualDir BISFactory::GetModificationLoadRoot(u64 title_id) const {
50 // LayeredFS doesn't work on updates and title id-less homebrew 50 // LayeredFS doesn't work on updates and title id-less homebrew
51 if (title_id == 0 || (title_id & 0x800) > 0) 51 if (title_id == 0 || (title_id & 0xFFF) == 0x800)
52 return nullptr; 52 return nullptr;
53 return GetOrCreateDirectoryRelative(load_root, fmt::format("/{:016X}", title_id)); 53 return GetOrCreateDirectoryRelative(load_root, fmt::format("/{:016X}", title_id));
54} 54}