From 4c220770ecfea7902d22f06d99213ea75b1376b6 Mon Sep 17 00:00:00 2001 From: Adrian <78108584+AdrianCassar@users.noreply.github.com> Date: Wed, 11 Jan 2023 00:36:34 +0000 Subject: [PATCH] Dynamic TU patch Load the correct TU patch for the loaded launch module --- src/xenia/kernel/kernel_state.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/xenia/kernel/kernel_state.cc b/src/xenia/kernel/kernel_state.cc index 7dd91a456..32eca0e41 100644 --- a/src/xenia/kernel/kernel_state.cc +++ b/src/xenia/kernel/kernel_state.cc @@ -493,10 +493,13 @@ X_RESULT KernelState::ApplyTitleUpdate(const object_ref module) { X_RESULT open_status = content_manager()->OpenContent("UPDATE", title_update, disc_number); + // Use the corresponding patch for the launch module + std::filesystem::path patch_xexp = fmt::format("{0}.xexp", module->name()); + std::string resolved_path = ""; file_system()->FindSymbolicLink("UPDATE:", resolved_path); xe::vfs::Entry* patch_entry = kernel_state()->file_system()->ResolvePath( - resolved_path + "default.xexp"); + resolved_path + patch_xexp.generic_string()); if (patch_entry) { const std::string patch_path = patch_entry->absolute_path();