diff --git a/src/core/file_sys/ncch_container.cpp b/src/core/file_sys/ncch_container.cpp index dcc8dd57b..8ddde9e60 100644 --- a/src/core/file_sys/ncch_container.cpp +++ b/src/core/file_sys/ncch_container.cpp @@ -516,7 +516,7 @@ Loader::ResultStatus NCCHContainer::ApplyCodePatch(std::vector& code) const const auto mods_path = fmt::format("{}mods/{:016X}/", FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), - ncch_header.program_id); + ncch_header.program_id & 0x00040000'FFFFFFFF); const std::array patch_paths{{ {mods_path + "exefs/code.ips", Patch::ApplyIpsPatch}, {mods_path + "exefs/code.bps", Patch::ApplyBpsPatch}, @@ -560,7 +560,7 @@ Loader::ResultStatus NCCHContainer::LoadOverrideExeFSSection(const char* name, const auto mods_path = fmt::format("{}mods/{:016X}/", FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), - ncch_header.program_id); + ncch_header.program_id & 0x00040000'FFFFFFFF); std::array override_paths{{ mods_path + "exefs/" + override_name, filepath + ".exefsdir/" + override_name, @@ -625,7 +625,7 @@ Loader::ResultStatus NCCHContainer::ReadRomFS(std::shared_ptr& romf const auto path = fmt::format("{}mods/{:016X}/", FileUtil::GetUserPath(FileUtil::UserPath::LoadDir), - ncch_header.program_id); + ncch_header.program_id & 0x00040000'FFFFFFFF); if (FileUtil::Exists(path + "romfs/") || FileUtil::Exists(path + "romfs_ext/")) { romfs_file = std::make_shared(std::move(direct_romfs), path + "romfs/", path + "romfs_ext/");