Loader: Add support for exefs redirection to code nsp on SD.

This commit is contained in:
Michael Scire 2018-07-29 16:35:43 -07:00
parent 44e2412ae6
commit 3a2520a3b7
4 changed files with 34 additions and 5 deletions

View file

@ -111,17 +111,21 @@ std::tuple<Result> ProcessManagerService::unregister_title(u64 index) {
Result ProcessManagerService::populate_program_info_buffer(ProcessManagerService::ProgramInfo *out, Registration::TidSid *tid_sid) {
NpdmUtils::NpdmInfo info;
Result rc;
bool mounted_code = false;
if (tid_sid->storage_id != FsStorageId_None) {
rc = ContentManagement::MountCodeForTidSid(tid_sid);
if (R_FAILED(rc)) {
return rc;
}
mounted_code = true;
} else if (R_SUCCEEDED(ContentManagement::MountCodeNspOnSd(tid_sid->title_id))) {
mounted_code = true;
}
rc = NpdmUtils::LoadNpdm(tid_sid->title_id, &info);
if (tid_sid->storage_id != FsStorageId_None) {
if (mounted_code) {
ContentManagement::UnmountCode();
}