diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index dc8b5407d4..cb37796fac 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -1055,11 +1055,21 @@ void GMainWindow::OnMenuInstallToNAND() { return; } - if (index >= 5) - index += 0x7B; + // If index is equal to or past Game, add the jump in TitleType. + if (index >= 5) { + index += static_cast(FileSys::TitleType::Application) - + static_cast(FileSys::TitleType::FirmwarePackageB); + } + + FileSys::InstallResult res; + if (index >= static_cast(FileSys::TitleType::Application)) { + res = Service::FileSystem::GetUserNANDContents()->InstallEntry( + nca, static_cast(index), false, qt_raw_copy); + } else { + res = Service::FileSystem::GetSystemNANDContents()->InstallEntry( + nca, static_cast(index), false, qt_raw_copy); + } - const auto res = Service::FileSystem::GetUserNANDContents()->InstallEntry( - nca, static_cast(index), false, qt_raw_copy); if (res == FileSys::InstallResult::Success) { success(); } else if (res == FileSys::InstallResult::ErrorAlreadyExists) {